Index: benchmark/plot.py
===================================================================
--- benchmark/plot.py	(revision 3b80db89ad8057ef837786b049cd89765ab7a20d)
+++ benchmark/plot.py	(revision 00675a12696d6b64398fbee5d3706447dcef3707)
@@ -33,5 +33,5 @@
 	"Ops per threads"       : Field('Ops'   , 0, False),
 	"ns per ops/procs"      : Field('ns'    , 0, False),
-	"Number of threads"     : Field('thrd'  , 1, False),
+	"Number of threads"     : Field(''      , 1, False),
 	"Total Operations(ops)" : Field('Ops'   , 0, False),
 	"Ops/sec/procs"         : Field('Ops'   , 0, False),
@@ -40,10 +40,13 @@
 	"Cycle size (# thrds)"  : Field('thrd'  , 1, False),
 	"Duration (ms)"         : Field('ms'    , 0, False),
-	"Target QPS"            : Field('QPS'   , 0, False),
-	"Actual QPS"            : Field('QPS'   , 0, False),
+	"Target QPS"            : Field(''      , 0, False),
+	"Actual QPS"            : Field(''      , 0, False),
+	"Average Read Latency"  : Field('us'    , 0, True),
 	"Median Read Latency"   : Field('us'    , 0, True),
 	"Tail Read Latency"     : Field('us'    , 0, True),
+	"Average Update Latency": Field('us'    , 0, True),
 	"Median Update Latency" : Field('us'    , 0, True),
 	"Tail Update Latency"   : Field('us'    , 0, True),
+	"Update Ratio"          : Field('\%'    , 0, False),
 }
 
@@ -92,5 +95,5 @@
 	print("Making Plots")
 
-	for name, data in series.items():
+	for name, data in sorted(series.items()):
 		_col = next(colors)
 		plt.scatter(data['x'], data['y'], color=_col, label=name, marker='x')
Index: benchmark/process-mutilate.py
===================================================================
--- benchmark/process-mutilate.py	(revision 3b80db89ad8057ef837786b049cd89765ab7a20d)
+++ benchmark/process-mutilate.py	(revision 00675a12696d6b64398fbee5d3706447dcef3707)
@@ -14,4 +14,5 @@
 parser = argparse.ArgumentParser(description='Python Script to convert output from mutilate to rmit like output')
 parser.add_argument('--out', nargs='?', type=argparse.FileType('w'), default=sys.stdout)
+parser.add_argument('--var', nargs='?', type=str, default='Target QPS')
 try:
 	options =  parser.parse_args()
@@ -31,4 +32,5 @@
 
 	try:
+		latAvs = fields[1]
 		lat50s = fields[6]
 		lat99s = fields[9]
@@ -37,4 +39,5 @@
 
 	try:
+		latAv = locale.atof(latAvs)
 		lat50 = locale.atof(lat50s)
 		lat99 = locale.atof(lat99s)
@@ -42,5 +45,5 @@
 		raise Warning("Warning: \"{}\" \"{}\"! can't convert to float".format(lat50s, lat99s))
 
-	return lat50, lat99
+	return latAv, lat50, lat99
 
 def want0(line):
@@ -58,8 +61,8 @@
 		try:
 			if   line.startswith("read"):
-				rlat50, rlat99 = precentile(line)
+				rlatAv, rlat50, rlat99 = precentile(line)
 
 			elif line.startswith("update"):
-				ulat50, ulat99 = precentile(line)
+				ulatAv, ulat50, ulat99 = precentile(line)
 
 			elif line.startswith("Total QPS"):
@@ -84,4 +87,5 @@
 
 	try:
+		out['Average Read Latency'] = rlatAv
 		out['Median Read Latency'] = rlat50
 		out['Tail Read Latency'] = rlat99
@@ -90,4 +94,5 @@
 
 	try:
+		out['Average Update Latency'] = ulatAv
 		out['Median Update Latency'] = ulat50
 		out['Tail Update Latency'] = ulat99
@@ -112,5 +117,5 @@
 			continue
 
-		d = { 'Target QPS': int(rate) }
+		d = { options.var : int(rate) }
 
 		w = extract( f, d )
