Repository 'plotly_regression_performance_plots'
hg clone https://toolshed.g2.bx.psu.edu/repos/bgruening/plotly_regression_performance_plots

Changeset 0:0800a1b66bbd (2018-11-08)
Next changeset 1:389227fa1864 (2019-01-09)
Commit message:
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/plotly_regression_performance_plots commit c17efec384ad7438f54675fae1ab0c3a57c22869
added:
plot_regression_performance.py
plotly_regression_performance_plots.xml
test-data/output_actual_vs_pred_gtbr.html
test-data/output_residual_plot_gtbr.html
test-data/output_scatter_plot_gtbr.html
test-data/predictions_gtbr
test-data/test_targets
b
diff -r 000000000000 -r 0800a1b66bbd plot_regression_performance.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/plot_regression_performance.py Thu Nov 08 13:28:04 2018 -0500
[
@@ -0,0 +1,98 @@
+import argparse
+import pandas as pd
+import plotly
+import plotly.graph_objs as go
+
+
+def main(infile_input, infile_output):
+    """
+    Produce an interactive actual vs predicted curves and residual plots
+    Args:
+        infile_input: str, input tabular file with true values
+        infile_output: str, input tabular file with predicted values
+    """
+
+    df_input = pd.read_csv(infile_input, sep='\t', parse_dates=True)
+    df_output = pd.read_csv(infile_output, sep='\t', parse_dates=True)
+    true_values = df_input.iloc[:, -1].copy()
+    predicted_values = df_output.iloc[:, -1].copy()
+    axis_labels = list(range(1, len(true_values)+1))
+
+    # true vs predicted curves
+    trace_true = go.Scatter(
+        x=axis_labels,
+        y=true_values,
+        mode='lines+markers',
+        name='True values'
+    )
+
+    trace_predicted = go.Scatter(
+        x=axis_labels,
+        y=predicted_values,
+        mode='lines+markers',
+        name='Predicted values'
+    )
+
+    layout_tp = go.Layout(
+        title='True vs predicted values',
+        xaxis=dict(title='Number of data points'),
+        yaxis=dict(title='Values')
+    )
+
+    data_tp = [trace_true, trace_predicted]
+    fig_tp = go.Figure(data=data_tp, layout=layout_tp)
+    plotly.offline.plot(fig_tp, filename="output_actual_vs_pred.html", auto_open=False)
+
+    # scatter plot
+    max_tv = int(max(true_values))
+    x_y_values = list(range(0, max_tv))
+
+    trace_x_eq_y = go.Scatter(
+        x=x_y_values,
+        y=x_y_values,
+        mode='lines',
+        name='X = Y curve'
+    )
+
+    trace_true_pred = go.Scatter(
+        x=true_values,
+        y=predicted_values,
+        mode='markers',
+        name='True and predicted values'
+    )
+
+    layout_true_pred = go.Layout(
+        title='True vs predicted values',
+        xaxis=dict(title='True values'),
+        yaxis=dict(title='Predicted values')
+    )
+
+    data_true_pred = [trace_true_pred, trace_x_eq_y]
+    fig_true_pred = go.Figure(data=data_true_pred, layout=layout_true_pred)
+    plotly.offline.plot(fig_true_pred, filename="output_scatter_plot.html", auto_open=False)
+
+    # residual plot
+    residual = predicted_values - true_values
+    trace_residual = go.Scatter(
+        x=predicted_values,
+        y=residual,
+        mode='markers'
+    )
+
+    layout_residual = go.Layout(
+        title='Residual vs predicted values',
+        xaxis=dict(title='Predicted values'),
+        yaxis=dict(title='Residual (Predicted - True)')
+    )
+
+    data_residual = [trace_residual]
+    fig_residual = go.Figure(data=data_residual, layout=layout_residual)
+    plotly.offline.plot(fig_residual, filename="output_residual_plot.html", auto_open=False)
+
+
+if __name__ == "__main__":
+    aparser = argparse.ArgumentParser()
+    aparser.add_argument("-i", "--input", dest="infile_input", required=True)
+    aparser.add_argument("-j", "--output", dest="infile_output", required=True)
+    args = aparser.parse_args()
+    main(args.infile_input, args.infile_output)
b
diff -r 000000000000 -r 0800a1b66bbd plotly_regression_performance_plots.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/plotly_regression_performance_plots.xml Thu Nov 08 13:28:04 2018 -0500
[
@@ -0,0 +1,43 @@
+<tool id="plotly_regression_performance_plots" name="Plot actual vs predicted curves and residual plots" version="0.1">
+    <description>of tabular data</description>
+    <requirements>
+        <requirement type="package" version="3.6">python</requirement>
+        <requirement type="package" version="0.22.0">pandas</requirement>
+        <requirement type="package" version="3.1.1">plotly</requirement>
+    </requirements>
+    <version_command>echo $version</version_command>
+    <command detect_errors="aggressive"><![CDATA[
+    python '$__tool_directory__/plot_regression_performance.py'
+        -i '$infile_input'
+        -j '$infile_output'
+]]>
+    </command>
+    <inputs>
+        <param name="infile_input" type="data" format="tabular" label="Select input data file :" help="Input data is a tabular file in which the last column (including the column if there is only one) contains the target values."/>
+        <param name="infile_output" type="data" format="tabular" label="Select predicted data file :" help="Predicted data is a tabular file in which the last column (including the column if there is only one) contains the predicted values."/>
+    </inputs>
+
+    <outputs>
+        <data name="output_actual_vs_pred" format="html" from_work_dir="output_actual_vs_pred.html" label="Actual vs predicted curves of tabular data on ${on_string}"/>
+        <data name="output_scatter_plot" format="html" from_work_dir="output_scatter_plot.html" label="Scatter plot of actual and predicted values of tabular data on ${on_string}"/>
+        <data name="output_residual_plot" format="html" from_work_dir="output_residual_plot.html" label="Residual plot of tabular data on ${on_string}"/>
+    </outputs>
+    
+    <tests>   
+        <test>
+            <param name="infile_input" value="test_targets" ftype="tabular"/>
+            <param name="infile_output" value="predictions_gtbr" ftype="tabular"/>
+            <output name="output_actual_vs_pred" file="output_actual_vs_pred_gtbr.html" compare="sim_size"/>
+            <output name="output_scatter_plot" file="output_scatter_plot_gtbr.html" compare="sim_size"/>
+            <output name="output_residual_plot" file="output_residual_plot_gtbr.html" compare="sim_size"/>
+        </test>     
+    </tests>
+    <help><![CDATA[
+**What it does**
+
+
+Produce a `line and scatter curves <https://plot.ly/python/line-and-scatter/>`_ from tabular files. The input data contains the true values (last column) and the predicted data contains the predicted values (last column). The true and predicted values are plotted against each other. The plot is buried in a html file which provides rich interactive features. Image can be saved in various format, such as 'png', 'svg', 'jpeg' and so on.
+
+    ]]>
+    </help>
+</tool>
b
diff -r 000000000000 -r 0800a1b66bbd test-data/output_actual_vs_pred_gtbr.html
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/output_actual_vs_pred_gtbr.html Thu Nov 08 13:28:04 2018 -0500
[
b'@@ -0,0 +1,14 @@\n+<html><head><meta charset="utf-8" /></head><body><script type="text/javascript">/**\n+* plotly.js v1.39.4\n+* Copyright 2012-2018, Plotly, Inc.\n+* All rights reserved.\n+* Licensed under the MIT license\n+*/\n+!function(t){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).Plotly=t()}}(function(){return function(){return function t(e,r,n){function i(o,s){if(!r[o]){if(!e[o]){var l="function"==typeof require&&require;if(!s&&l)return l(o,!0);if(a)return a(o,!0);var c=new Error("Cannot find module \'"+o+"\'");throw c.code="MODULE_NOT_FOUND",c}var u=r[o]={exports:{}};e[o][0].call(u.exports,function(t){var r=e[o][1][t];return i(r||t)},u,u.exports,t,e,r,n)}return r[o].exports}for(var a="function"==typeof require&&require,o=0;o<n.length;o++)i(n[o]);return i}}()({1:[function(t,e,r){"use strict";var n=t("../src/lib"),i={"X,X div":"direction:ltr;font-family:\'Open Sans\', verdana, arial, sans-serif;margin:0;padding:0;","X input,X button":"font-family:\'Open Sans\', verdana, arial, sans-serif;","X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg":"overflow:hidden;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;z-index:1001;background:rgba(255,255,255,0.7);","X .modebar--hover":"opacity:0;-webkit-transition:opacity 0.3s ease 0s;-moz-transition:opacity 0.3s ease 0s;-ms-transition:opacity 0.3s ease 0s;-o-transition:opacity 0.3s ease 0s;transition:opacity 0.3s ease 0s;","X:hover .modebar--hover":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;margin-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group:first-child":"margin-left:0px;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;cursor:pointer;line-height:normal;box-sizing:border-box;","X .modebar-btn svg":"position:relative;top:2px;","X .modebar-btn path":"fill:rgba(0,31,95,0.3);","X .modebar-btn.active path,X .modebar-btn:hover path":"fill:rgba(0,22,72,0.5);","X .modebar-btn.modebar-btn--logo":"padding:3px 1px;","X .modebar-btn.modebar-btn--logo path":"fill:#447adb !important;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":"content:\'\';position:absolute;background:transparent;border:6px solid transparent;z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;","X [data-title]:after":"content:attr(data-title);backgr'..b'790704, 86.26492405635429, 79.82837504569258, 85.3642747801667, 89.77663540870995, 85.53076864516072, 87.3858911793499, 78.61713011969374, 97.73368137982833, 93.0280819862198, 95.65160914477741, 76.72277130856484, 95.59255665728556, 95.0709127308114, 92.15227596865843, 79.07544671376895, 75.03907661488157, 90.3655047729707, 89.21024996891275, 86.98004634338301, 90.70015570696407, 89.25604335502649, 87.45667978013752, 95.51051105182249, 96.07582411459373, 83.27643299758564, 88.98361576117775, 73.19247874383491, 69.90527906135807, 93.79025661118044, 80.53561953594556, 62.675043687387706, 94.47347327371763, 69.17850260090239, 91.6525782803115, 93.52116074281444, 86.44292785202917, 88.53752934076927, 97.10927546020235, -1.6370618885276078, 91.63007924638092, 87.07586154341335, 92.59180896364386, 83.60594839129992, 84.05572144074951, 87.7394426778586, 89.57929658867823, 88.58365245944547, 98.00079019343048, 93.24013408537337, 98.0066069542569, 57.66717394171943, 79.74429707298502, 93.15300695594857, 86.22578653068136, 88.50546588756694, 87.15471491135028, 95.50513771707372, 90.28393655463341, 61.32942744878439, 93.67185240273035, 97.78409056240179, 93.2444970445784, 67.65048019240828, 95.40906197671198, 90.00907381052298, 89.85099882390408, 76.28449287779546, 86.63761519182951, 88.58553467715454, 79.82571758014049, 88.51789025079151, 93.54034316185243, 87.79769985499183, 66.63811463188206, 96.53639138207471, 76.63005237767563, 91.11403923233256, 90.30916127628508, 77.72315076473095, 92.2683242287149, 96.40658979240196, 0.37157917393663575, 86.5457052685091, 69.93675969846174, 82.19691478449806, 93.58952516388996, 90.67162248808336, 98.0729342537853, 81.517530406528, 86.29855021188921, 88.11260821165028, 82.27643809113145, 92.59531420387395, 89.79800294028567, 93.496988666529, 98.10783704859536, 92.99141822143564, 81.46733227713347, 0.7577311353126324, 97.21607978536116, 86.33804775025827, 87.2894372140978, 94.28325667660374, 91.94047695921944, 75.61366807585311, 88.87298246960259, 81.752722059549, 76.35733448269795, 97.5098100081435, 92.97545069558964, 91.52861919038622, 91.22076170974968, 88.2479009399798, 74.26413228004449, 94.2509504721454, 92.94936463075359, 87.32631392679464, 83.11369340558073, 89.73203355351765, 71.69290724341276, 92.90473773343169, 94.80882937488764, 87.40483040471705, 81.87470315648669, 93.93540820966946, 94.93595458588484, 84.35127970283524, 95.76433138026741, 74.27560373313372, 97.99250803769505, 90.18484458258185, 89.83386925455632, 84.91609870681856, 97.46182174782085, 69.42366190759996, 94.24160460267176, 93.30978734853687, 89.91367776272409, 92.91002418957001, 98.10783704859536, 92.78978546593285, 90.749168920548, 95.73355942104851, 71.27127090777591, 95.55418563320733, 95.82803013538877, 78.43718188990547, 94.08880126421627, 73.11778320586212, 73.65292063839432, 77.60285429718773, 89.33496802401167, 84.1417969232172, 81.96836804302157, -0.12142239687639962, 78.42604340742447, 88.17734651412698, 73.38848841986608, 95.29779753253919, 87.31386683428421, 97.67677237228001, 91.9448713276079, 77.53808033644688, 85.58623364143492, 89.67878087267746, 96.87315555189696, 86.49362503616267, 71.62851990902755, 96.25270112823785, 89.10593783593654, 94.15073991813, 92.85375206021419, 66.73250730158321, 90.7145562052576, 90.27390205659208, 70.99375754697472], "type": "scatter", "uid": "f6ff3305-dcf1-11e8-8a94-901b0e1850ed"}],\n+            {"title": "True vs predicted values", "xaxis": {"title": "Number of data points"}, "yaxis": {"title": "Values"}},\n+            {"showLink": true, "linkText": "Export to plot.ly"}\n+        ).then(function () {return Plotly.addFrames(\'9ebb8988-49c9-4414-bab9-59053db198b5\',{});}).then(function(){Plotly.animate(\'9ebb8988-49c9-4414-bab9-59053db198b5\');})\n+        </script><script type="text/javascript">window.addEventListener("resize", function(){Plotly.Plots.resize(document.getElementById("9ebb8988-49c9-4414-bab9-59053db198b5"));});</script></body></html>\n\\ No newline at end of file\n'
b
diff -r 000000000000 -r 0800a1b66bbd test-data/output_residual_plot_gtbr.html
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/output_residual_plot_gtbr.html Thu Nov 08 13:28:04 2018 -0500
[
b'@@ -0,0 +1,14 @@\n+<html><head><meta charset="utf-8" /></head><body><script type="text/javascript">/**\n+* plotly.js v1.39.4\n+* Copyright 2012-2018, Plotly, Inc.\n+* All rights reserved.\n+* Licensed under the MIT license\n+*/\n+!function(t){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).Plotly=t()}}(function(){return function(){return function t(e,r,n){function i(o,s){if(!r[o]){if(!e[o]){var l="function"==typeof require&&require;if(!s&&l)return l(o,!0);if(a)return a(o,!0);var c=new Error("Cannot find module \'"+o+"\'");throw c.code="MODULE_NOT_FOUND",c}var u=r[o]={exports:{}};e[o][0].call(u.exports,function(t){var r=e[o][1][t];return i(r||t)},u,u.exports,t,e,r,n)}return r[o].exports}for(var a="function"==typeof require&&require,o=0;o<n.length;o++)i(n[o]);return i}}()({1:[function(t,e,r){"use strict";var n=t("../src/lib"),i={"X,X div":"direction:ltr;font-family:\'Open Sans\', verdana, arial, sans-serif;margin:0;padding:0;","X input,X button":"font-family:\'Open Sans\', verdana, arial, sans-serif;","X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg":"overflow:hidden;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;z-index:1001;background:rgba(255,255,255,0.7);","X .modebar--hover":"opacity:0;-webkit-transition:opacity 0.3s ease 0s;-moz-transition:opacity 0.3s ease 0s;-ms-transition:opacity 0.3s ease 0s;-o-transition:opacity 0.3s ease 0s;transition:opacity 0.3s ease 0s;","X:hover .modebar--hover":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;margin-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group:first-child":"margin-left:0px;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;cursor:pointer;line-height:normal;box-sizing:border-box;","X .modebar-btn svg":"position:relative;top:2px;","X .modebar-btn path":"fill:rgba(0,31,95,0.3);","X .modebar-btn.active path,X .modebar-btn:hover path":"fill:rgba(0,22,72,0.5);","X .modebar-btn.modebar-btn--logo":"padding:3px 1px;","X .modebar-btn.modebar-btn--logo path":"fill:#447adb !important;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":"content:\'\';position:absolute;background:transparent;border:6px solid transparent;z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;","X [data-title]:after":"content:attr(data-title);backgr'..b'5994, -1.8477240313415706, -3.9245532862310455, 0.039076614881565774, -0.6344952270293049, 2.2102499689127484, -1.0199536566169911, 1.7001557069640683, 0.2560433550264918, -2.54332021986248, -2.4894889481775095, -0.9241758854062709, 8.276432997585644, 8.983615761177745, 3.1924787438349114, -2.0947209386419274, -2.209743388819561, 4.535619535945557, -0.32495631261229363, 2.47347327371763, 11.178502600902391, 0.6525782803115021, -0.4788392571855553, 4.442927852029172, 0.5375293407692681, 1.1092754602023547, -1.6370618885276078, 2.630079246380916, 0.07586154341335316, 3.5918089636438566, -3.3940516087000816, 5.055721440749508, 1.7394426778586052, -0.42070341132176736, 0.5836524594454744, 0.0007901934304754832, 2.24013408537337, 0.006606954256895392, 2.667173941719433, 2.7442970729850202, 2.1530069559485696, -0.7742134693186387, 3.5054658875669418, 4.154714911350283, -0.49486228292627743, -1.7160634453665864, 3.3294274487843865, -0.3281475972696484, 0.7840905624017864, -0.7555029554216048, 0.6504801924082813, -1.5909380232880181, 0.00907381052297751, 2.850998823904078, -3.715507122204542, -4.362384808170489, -1.4144653228454587, 0.8257175801404912, 2.5178902507915097, 1.5403431618524337, -0.2023001450081665, 3.638114631882061, 0.5363913820747115, -5.369947622324375, -1.8859607676674415, -2.6908387237149185, 0.7231507647309456, 1.2683242287149028, -0.5934102075980405, 0.37157917393663575, 1.5457052685090957, -2.063240301538258, 0.19691478449806255, 0.5895251638899595, 2.671622488083358, 0.07293425378530571, 3.517530406527996, -1.7014497881107928, -1.887391788349717, -0.7235619088685468, -3.4046857961260457, 0.7980029402856701, -1.5030113334709938, -0.892162951404643, -0.008581778564362708, -1.5326677228665346, 0.7577311353126324, -0.7839202146388402, -3.6619522497417307, 0.2894372140978021, 1.2832566766037417, -1.0595230407805616, -1.3863319241468872, -1.12701753039741, 6.752722059549001, 1.3573344826979508, -0.4901899918564965, 0.9754506955896431, -0.4713808096137768, 1.2207617097496808, -0.7520990600201998, 2.2641322800444925, 1.250950472145405, -2.0506353692464074, -2.67368607320536, -3.886306594419267, 0.7320335535176525, 0.6929072434127619, 0.9047377334316877, -0.19117062511236327, 0.4048304047170461, 0.8747031564866887, 0.9354082096694611, -0.06404541411515652, 0.35127970283524235, -0.2356686197325928, -3.724396266866279, 0.9925080376950461, -1.8151554174181541, -0.1661307454436809, 0.9160987068185591, 0.4618217478208493, 1.4236619075999641, 0.24160460267175665, -2.6902126514631277, 2.9136777627240917, 0.9100241895700094, -0.892162951404643, -0.2102145340671484, 1.7491689205480014, 1.7335594210485112, -0.7287290922240857, 0.5541856332073252, 0.8280301353887722, 2.4371818899054745, -2.911198735783728, 2.117783205862125, -4.3470793616056795, 6.602854297187733, 0.3349680240116726, 3.1417969232172, -4.03163195697843, -0.12142239687639962, 1.4260434074244728, 1.177346514126981, -2.6115115801339215, 0.2977975325391924, 1.3138668342842124, -0.32322762771998725, -2.055128672392101, 3.538080336446882, -0.41376635856508415, -0.32121912732253577, -1.1268444481030429, 1.493625036162669, 3.6285199090275455, -0.7472988717621547, -0.8940621640634561, -2.84926008187, 4.853752060214191, -9.267492698416788, 3.714556205257594, -0.7260979434079218, -1.0062424530252798], "type": "scatter", "uid": "f6ff3308-dcf1-11e8-8a94-901b0e1850ed"}],\n+            {"title": "Residual vs predicted values", "xaxis": {"title": "Predicted values"}, "yaxis": {"title": "Residual (Predicted - True)"}},\n+            {"showLink": true, "linkText": "Export to plot.ly"}\n+        ).then(function () {return Plotly.addFrames(\'423fe334-6b2c-409c-bd49-f170c223e10c\',{});}).then(function(){Plotly.animate(\'423fe334-6b2c-409c-bd49-f170c223e10c\');})\n+        </script><script type="text/javascript">window.addEventListener("resize", function(){Plotly.Plots.resize(document.getElementById("423fe334-6b2c-409c-bd49-f170c223e10c"));});</script></body></html>\n\\ No newline at end of file\n'
b
diff -r 000000000000 -r 0800a1b66bbd test-data/output_scatter_plot_gtbr.html
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/output_scatter_plot_gtbr.html Thu Nov 08 13:28:04 2018 -0500
[
b'@@ -0,0 +1,14 @@\n+<html><head><meta charset="utf-8" /></head><body><script type="text/javascript">/**\n+* plotly.js v1.39.4\n+* Copyright 2012-2018, Plotly, Inc.\n+* All rights reserved.\n+* Licensed under the MIT license\n+*/\n+!function(t){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).Plotly=t()}}(function(){return function(){return function t(e,r,n){function i(o,s){if(!r[o]){if(!e[o]){var l="function"==typeof require&&require;if(!s&&l)return l(o,!0);if(a)return a(o,!0);var c=new Error("Cannot find module \'"+o+"\'");throw c.code="MODULE_NOT_FOUND",c}var u=r[o]={exports:{}};e[o][0].call(u.exports,function(t){var r=e[o][1][t];return i(r||t)},u,u.exports,t,e,r,n)}return r[o].exports}for(var a="function"==typeof require&&require,o=0;o<n.length;o++)i(n[o]);return i}}()({1:[function(t,e,r){"use strict";var n=t("../src/lib"),i={"X,X div":"direction:ltr;font-family:\'Open Sans\', verdana, arial, sans-serif;margin:0;padding:0;","X input,X button":"font-family:\'Open Sans\', verdana, arial, sans-serif;","X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg":"overflow:hidden;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;z-index:1001;background:rgba(255,255,255,0.7);","X .modebar--hover":"opacity:0;-webkit-transition:opacity 0.3s ease 0s;-moz-transition:opacity 0.3s ease 0s;-ms-transition:opacity 0.3s ease 0s;-o-transition:opacity 0.3s ease 0s;transition:opacity 0.3s ease 0s;","X:hover .modebar--hover":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;margin-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-group:first-child":"margin-left:0px;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;cursor:pointer;line-height:normal;box-sizing:border-box;","X .modebar-btn svg":"position:relative;top:2px;","X .modebar-btn path":"fill:rgba(0,31,95,0.3);","X .modebar-btn.active path,X .modebar-btn:hover path":"fill:rgba(0,22,72,0.5);","X .modebar-btn.modebar-btn--logo":"padding:3px 1px;","X .modebar-btn.modebar-btn--logo path":"fill:#447adb !important;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":"content:\'\';position:absolute;background:transparent;border:6px solid transparent;z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;","X [data-title]:after":"content:attr(data-title);backgr'..b'7, 98.00079019343048, 93.24013408537337, 98.0066069542569, 57.66717394171943, 79.74429707298502, 93.15300695594857, 86.22578653068136, 88.50546588756694, 87.15471491135028, 95.50513771707372, 90.28393655463341, 61.32942744878439, 93.67185240273035, 97.78409056240179, 93.2444970445784, 67.65048019240828, 95.40906197671198, 90.00907381052298, 89.85099882390408, 76.28449287779546, 86.63761519182951, 88.58553467715454, 79.82571758014049, 88.51789025079151, 93.54034316185243, 87.79769985499183, 66.63811463188206, 96.53639138207471, 76.63005237767563, 91.11403923233256, 90.30916127628508, 77.72315076473095, 92.2683242287149, 96.40658979240196, 0.37157917393663575, 86.5457052685091, 69.93675969846174, 82.19691478449806, 93.58952516388996, 90.67162248808336, 98.0729342537853, 81.517530406528, 86.29855021188921, 88.11260821165028, 82.27643809113145, 92.59531420387395, 89.79800294028567, 93.496988666529, 98.10783704859536, 92.99141822143564, 81.46733227713347, 0.7577311353126324, 97.21607978536116, 86.33804775025827, 87.2894372140978, 94.28325667660374, 91.94047695921944, 75.61366807585311, 88.87298246960259, 81.752722059549, 76.35733448269795, 97.5098100081435, 92.97545069558964, 91.52861919038622, 91.22076170974968, 88.2479009399798, 74.26413228004449, 94.2509504721454, 92.94936463075359, 87.32631392679464, 83.11369340558073, 89.73203355351765, 71.69290724341276, 92.90473773343169, 94.80882937488764, 87.40483040471705, 81.87470315648669, 93.93540820966946, 94.93595458588484, 84.35127970283524, 95.76433138026741, 74.27560373313372, 97.99250803769505, 90.18484458258185, 89.83386925455632, 84.91609870681856, 97.46182174782085, 69.42366190759996, 94.24160460267176, 93.30978734853687, 89.91367776272409, 92.91002418957001, 98.10783704859536, 92.78978546593285, 90.749168920548, 95.73355942104851, 71.27127090777591, 95.55418563320733, 95.82803013538877, 78.43718188990547, 94.08880126421627, 73.11778320586212, 73.65292063839432, 77.60285429718773, 89.33496802401167, 84.1417969232172, 81.96836804302157, -0.12142239687639962, 78.42604340742447, 88.17734651412698, 73.38848841986608, 95.29779753253919, 87.31386683428421, 97.67677237228001, 91.9448713276079, 77.53808033644688, 85.58623364143492, 89.67878087267746, 96.87315555189696, 86.49362503616267, 71.62851990902755, 96.25270112823785, 89.10593783593654, 94.15073991813, 92.85375206021419, 66.73250730158321, 90.7145562052576, 90.27390205659208, 70.99375754697472], "type": "scatter", "uid": "f6ff3306-dcf1-11e8-8a94-901b0e1850ed"}, {"mode": "lines", "name": "X = Y curve", "x": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98], "y": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98], "type": "scatter", "uid": "f6ff3307-dcf1-11e8-8a94-901b0e1850ed"}],\n+            {"title": "True vs predicted values", "xaxis": {"title": "True values"}, "yaxis": {"title": "Predicted values"}},\n+            {"showLink": true, "linkText": "Export to plot.ly"}\n+        ).then(function () {return Plotly.addFrames(\'f7e4cfe9-6c1e-4a09-bb0e-a2b9d17c7cc0\',{});}).then(function(){Plotly.animate(\'f7e4cfe9-6c1e-4a09-bb0e-a2b9d17c7cc0\');})\n+        </script><script type="text/javascript">window.addEventListener("resize", function(){Plotly.Plots.resize(document.getElementById("f7e4cfe9-6c1e-4a09-bb0e-a2b9d17c7cc0"));});</script></body></html>\n\\ No newline at end of file\n'
b
diff -r 000000000000 -r 0800a1b66bbd test-data/predictions_gtbr
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/predictions_gtbr Thu Nov 08 13:28:04 2018 -0500
b
b'@@ -0,0 +1,301 @@\n+lread\tlwrite\tscall\tsread\tswrite\tfork\texec\trchar\twchar\tpgout\tppgout\tpgfree\tpgscan\tatch\tpgin\tppgin\tpflt\tvflt\trunqsz\tfreemem\tfreeswap\tpredicted\n+25\t13\t3659\t140\t148\t0.400000005960465\t0.400000005960465\t165106\t199521\t0.0\t0.0\t0.0\t0.0\t0.0\t4.0\t6.800000190734861\t43.2000007629395\t48.0\t2.5999999046325697\t3172\t1637477\t90.1241376739523\n+4\t0\t655\t78\t98\t2.5999999046325697\t3.4000000953674303\t272364\t232714\t0.0\t0.0\t0.0\t0.0\t0.0\t30.399999618530302\t58.5999984741211\t187.600006103516\t198.600006103516\t2.4000000953674303\t2060\t1795691\t82.44164849815263\n+13\t11\t3836\t306\t145\t0.8000000119209291\t0.6000000238418579\t444375\t52421\t0.0\t0.0\t0.0\t0.0\t0.0\t22.0\t25.7999992370605\t55.0\t91.5999984741211\t3.20000004768372\t2432\t1509254\t87.07396438305025\n+25\t24\t1839\t234\t175\t0.400000005960465\t0.400000005960465\t102099\t31838\t0.0\t0.0\t0.0\t0.0\t0.0\t5.800000190734861\t5.800000190734861\t36.0\t92.4000015258789\t2.0\t522\t985510\t90.59972210096072\n+0\t0\t238\t38\t11\t0.200000002980232\t0.200000002980232\t243290\t9658\t0.0\t0.0\t0.0\t0.0\t0.0\t0.0\t0.0\t15.6000003814697\t16.7999992370605\t1.39999997615814\t7717\t1882171\t97.08484235681428\n+2\t0\t1722\t132\t77\t1.39999997615814\t1.39999997615814\t175711\t32362\t0.0\t0.0\t0.0\t0.0\t13.229999542236301\t2.4000000953674303\t3.41000008583069\t138.479995727539\t190.38000488281298\t1.0\t776\t1068697\t89.08101702007761\n+1\t0\t4183\t274\t195\t0.200000002980232\t0.200000002980232\t9067\t51436\t0.0\t0.0\t0.0\t0.0\t0.200000002980232\t0.0\t0.0\t17.5300006866455\t19.9200000762939\t2.2000000476837203\t268\t1063124\t88.94084380837582\n+3\t1\t575\t81\t44\t1.79999995231628\t1.60000002384186\t59646\t5592\t0.0\t0.0\t0.0\t0.0\t0.0\t0.200000002980232\t0.200000002980232\t106.400001525879\t160.600006103516\t2.4000000953674303\t593\t1710902\t92.12715238696737\n+13\t6\t1643\t117\t171\t1.20000004768372\t2.79999995231628\t357570\t269732\t0.0\t0.0\t0.0\t0.0\t0.0\t3.20000004768372\t6.0\t128.199996948242\t121.800003051758\t4.0\t2537\t1551914\t89.68530237717528\n+0\t0\t810\t45\t21\t0.400000005960465\t0.400000005960465\t108170\t5654\t0.0\t0.0\t0.0\t0.0\t0.0\t0.0\t0.0\t74.0\t76.0\t1.39999997615814\t5136\t1830157\t95.19340623013254\n+7\t2\t6741\t458\t380\t2.0\t2.2000000476837203\t129326\t509497\t17.370000839233402\t57.290000915527294\t93.2099990844727\t179.839996337891\t0.8000000119209291\t68.05999755859379\t79.8399963378906\t147.110000610352\t342.32000732421903\t1.0\t267\t986973\t70.16842502896027\n+8\t1\t2451\t248\t223\t5.400000095367429\t3.4000000953674303\t87278\t58133\t0.0\t0.0\t0.0\t0.0\t0.0\t0.400000005960465\t0.8000000119209291\t243.399993896484\t361.600006103516\t4.19999980926514\t858\t1541506\t83.84657884618947\n+6\t2\t1080\t164\t85\t0.400000005960465\t0.6000000238418579\t135663\t43467\t4.3899998664856\t7.78000020980835\t6.19000005722046\t0.0\t1.20000004768372\t1.20000004768372\t1.20000004768372\t45.310001373290994\t102.98999786376999\t3.4000000953674303\t317\t1038767\t92.12475139247823\n+1\t0\t226\t12\t25\t0.400000005960465\t0.400000005960465\t441\t13364\t0.0\t0.0\t0.0\t0.0\t0.0\t0.0\t0.0\t36.4000015258789\t33.4000015258789\t1.0\t7645\t1869835\t97.46724722918417\n+26\t4\t5240\t304\t299\t3.58999991416931\t4.78999996185303\t523148\t603192\t4.19000005722046\t7.389999866485599\t23.5499992370605\t44.5099983215332\t0.400000005960465\t62.4799995422363\t112.37999725341801\t237.52000427246102\t429.940002441406\t5.0\t769\t977341\t68.86781620983017\n+45\t59\t2875\t238\t128\t1.60000002384186\t6.400000095367429\t184912\t159603\t0.0\t0.0\t0.0\t0.0\t0.400000005960465\t13.0\t14.3999996185303\t167.0\t375.799987792969\t3.20000004768372\t890\t1545994\t81.5017588915173\n+21\t13\t1258\t92\t64\t0.400000005960465\t0.400000005960465\t27604\t35912\t0.0\t0.0\t0.0\t0.0\t0.0\t0.200000002980232\t0.200000002980232\t31.0\t44.2000007629395\t2.2000000476837203\t1143\t1714018\t95.28636904161218\n+18\t13\t4475\t699\t425\t4.19999980926514\t1.20000004768372\t557374\t557281\t0.0\t0.0\t0.0\t0.0\t0.0\t6.199999809265139\t8.80000019073486\t207.399993896484\t373.200012207031\t1.5\t567\t1040643\t76.06579937793491\n+1\t0\t225\t14\t22\t0.200000002980232\t0.200000002980232\t5448\t67049\t0.0\t0.0\t0.0\t0.0\t0.0\t0.0\t0.0\t23.5499992370605\t19.3600006103516\t1.0\t6935\t1855302\t96.80404942335859\n+12\t11\t1377\t128\t97\t0.6000000238418579\t0.6000000238418579\t51717\t23905\t11.3999996185303\t18.3999996185303\t49.0\t129.0\t3.0\t2.2000'..b'800003051758\t6.0\t141\t1092602\t88.17734651412698\n+12\t1\t3302\t508\t410\t9.60000038146973\t3.20000004768372\t468033\t12205\t0.0\t0.0\t0.0\t0.0\t0.0\t0.0\t0.0\t484.200012207031\t699.400024414063\t2.5999999046325697\t7838\t1862467\t73.38848841986608\n+1\t0\t1149\t78\t64\t0.200000002980232\t0.200000002980232\t26968\t17900\t0.0\t0.0\t0.0\t0.0\t0.0\t0.8000000119209291\t0.8000000119209291\t15.8000001907349\t69.40000152587889\t2.70000004768372\t693\t1062730\t95.29779753253918\n+41\t58\t4876\t270\t204\t0.200000002980232\t0.200000002980232\t63051\t106043\t3.0\t5.0\t5.0\t0.0\t0.400000005960465\t1.79999995231628\t2.0\t15.3999996185303\t34.4000015258789\t1.60000002384186\t296\t1067949\t87.3138668342842\n+1\t1\t215\t24\t24\t0.200000002980232\t0.200000002980232\t4481\t10470\t0.0\t0.0\t0.0\t0.0\t0.0\t0.0\t0.0\t20.7999992370605\t16.7999992370605\t1.0\t8767\t1835301\t97.67677237228\n+3\t1\t1969\t101\t91\t0.8000000119209291\t1.20000004768372\t245698\t56669\t0.0\t0.0\t0.0\t0.0\t0.0\t13.970000267028801\t14.369999885559098\t32.1399993896484\t79.44000244140629\t2.4000000953674303\t1855\t1547837\t91.9448713276079\n+11\t0\t4176\t277\t193\t1.39999997615814\t1.39999997615814\t302317\t141525\t14.770000457763699\t49.2999992370605\t147.5\t328.140014648437\t0.8000000119209291\t34.529998779296896\t49.0999984741211\t267.859985351562\t333.329986572266\t3.0\t145\t999352\t77.53808033644688\n+7\t1\t3273\t483\t242\t1.79999995231628\t1.79999995231628\t181856\t62053\t0.0\t0.0\t0.0\t0.0\t0.0\t2.2000000476837203\t2.4000000953674303\t71.0\t149.399993896484\t3.20000004768372\t2893\t1734720\t85.58623364143492\n+3\t0\t1492\t143\t129\t0.8000000119209291\t1.0\t34802\t41505\t5.389999866485599\t7.579999923706059\t20.9599990844727\t37.52000045776371\t0.0\t20.159999847412102\t20.5599994659424\t53.290000915527294\t138.72000122070298\t3.5999999046325697\t164\t1027489\t89.67878087267745\n+18\t28\t187\t15\t14\t0.200000002980232\t0.200000002980232\t546\t5216\t0.0\t0.0\t0.0\t0.0\t0.0\t0.0\t0.0\t15.6000003814697\t16.7999992370605\t2.0\t578\t1710862\t96.87315555189697\n+1\t0\t2903\t411\t299\t0.8000000119209291\t2.2000000476837203\t96619\t33746\t0.6000000238418579\t0.8000000119209291\t0.8000000119209291\t0.0\t0.200000002980232\t7.78000020980835\t12.1800003051758\t63.869998931884794\t158.88000488281298\t2.2000000476837203\t254\t1101202\t86.49362503616267\n+8\t0\t5541\t469\t407\t7.599999904632571\t2.2000000476837203\t209351\t11982\t0.0\t0.0\t0.0\t0.0\t0.200000002980232\t0.200000002980232\t0.200000002980232\t372.0\t544.4000244140631\t3.5999999046325697\t482\t1744770\t71.62851990902755\n+0\t0\t1569\t42\t37\t0.200000002980232\t0.200000002980232\t12811\t13660\t0.0\t0.0\t0.0\t0.0\t0.0\t0.200000002980232\t0.200000002980232\t15.6000003814697\t16.7999992370605\t1.20000004768372\t5964\t1818256\t96.25270112823783\n+3\t1\t406\t43\t30\t2.0\t2.0\t92514\t42969\t0.0\t0.0\t0.0\t0.0\t0.0\t2.4000000953674303\t4.40999984741211\t188.580001831055\t163.52999877929702\t1.39999997615814\t11490\t1885199\t89.10593783593654\n+0\t0\t1385\t56\t52\t0.200000002980232\t0.200000002980232\t12446\t20066\t1.60000002384186\t2.0\t2.0\t0.0\t0.400000005960465\t1.60000002384186\t2.0\t15.6000003814697\t17.0\t1.0\t149\t1750992\t94.15073991812999\n+39\t55\t478\t79\t65\t0.8000000119209291\t0.8000000119209291\t18849\t12080\t0.0\t0.0\t0.0\t0.0\t0.0\t1.60000002384186\t1.60000002384186\t66.47000122070311\t64.6699981689453\t2.5999999046325697\t807\t1750812\t92.85375206021418\n+16\t11\t7188\t496\t378\t4.59999990463257\t10.8000001907349\t219020\t80489\t1.20000004768372\t2.2000000476837203\t1.79999995231628\t0.0\t0.8000000119209291\t8.39999961853027\t12.3999996185303\t243.0\t611.5999755859369\t2.79999995231628\t345\t1001160\t66.73250730158321\n+62\t90\t2492\t146\t124\t0.200000002980232\t0.200000002980232\t117979\t82643\t0.0\t0.0\t0.0\t0.0\t0.0\t5.400000095367429\t8.60000038146973\t21.600000381469698\t52.0\t1.70000004768372\t910\t994222\t90.71455620525758\n+15\t14\t2060\t534\t207\t0.200000002980232\t0.200000002980232\t638967\t667864\t0.0\t0.0\t0.0\t0.0\t0.0\t0.6000000238418579\t0.6000000238418579\t23.2000007629395\t55.5999984741211\t1.70000004768372\t351\t1044085\t90.27390205659208\n+39\t17\t4118\t358\t218\t6.19000005722046\t5.78999996185303\t596924\t159901\t13.970000267028801\t41.319999694824205\t148.699996948242\t196.00999450683602\t5.78999996185303\t26.149999618530302\t51.5\t240.720001220703\t569.460021972656\t1.0\t208\t1081980\t70.99375754697472\n'
b
diff -r 000000000000 -r 0800a1b66bbd test-data/test_targets
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/test_targets Thu Nov 08 13:28:04 2018 -0500
b
b'@@ -0,0 +1,301 @@\n+lread\tlwrite\tscall\tsread\tswrite\tfork\texec\trchar\twchar\tpgout\tppgout\tpgfree\tpgscan\tatch\tpgin\tppgin\tpflt\tvflt\trunqsz\tfreemem\tfreeswap\ttarget\n+25\t13\t3659\t140\t148\t0.400000005960465\t0.400000005960465\t165106\t199521\t0\t0\t0\t0\t0\t4\t6.80000019073486\t43.2000007629395\t48\t2.59999990463257\t3172\t1637477\t92\n+4\t0\t655\t78\t98\t2.59999990463257\t3.40000009536743\t272364\t232714\t0\t0\t0\t0\t0\t30.3999996185303\t58.5999984741211\t187.600006103516\t198.600006103516\t2.40000009536743\t2060\t1795691\t76\n+13\t11\t3836\t306\t145\t0.800000011920929\t0.600000023841858\t444375\t52421\t0\t0\t0\t0\t0\t22\t25.7999992370605\t55\t91.5999984741211\t3.20000004768372\t2432\t1509254\t87\n+25\t24\t1839\t234\t175\t0.400000005960465\t0.400000005960465\t102099\t31838\t0\t0\t0\t0\t0\t5.80000019073486\t5.80000019073486\t36\t92.4000015258789\t2\t522\t985510\t92\n+0\t0\t238\t38\t11\t0.200000002980232\t0.200000002980232\t243290\t9658\t0\t0\t0\t0\t0\t0\t0\t15.6000003814697\t16.7999992370605\t1.39999997615814\t7717\t1882171\t98\n+2\t0\t1722\t132\t77\t1.39999997615814\t1.39999997615814\t175711\t32362\t0\t0\t0\t0\t13.2299995422363\t2.40000009536743\t3.41000008583069\t138.479995727539\t190.380004882813\t1\t776\t1068697\t88\n+1\t0\t4183\t274\t195\t0.200000002980232\t0.200000002980232\t9067\t51436\t0\t0\t0\t0\t0.200000002980232\t0\t0\t17.5300006866455\t19.9200000762939\t2.20000004768372\t268\t1063124\t91\n+3\t1\t575\t81\t44\t1.79999995231628\t1.60000002384186\t59646\t5592\t0\t0\t0\t0\t0\t0.200000002980232\t0.200000002980232\t106.400001525879\t160.600006103516\t2.40000009536743\t593\t1710902\t95\n+13\t6\t1643\t117\t171\t1.20000004768372\t2.79999995231628\t357570\t269732\t0\t0\t0\t0\t0\t3.20000004768372\t6\t128.199996948242\t121.800003051758\t4\t2537\t1551914\t93\n+0\t0\t810\t45\t21\t0.400000005960465\t0.400000005960465\t108170\t5654\t0\t0\t0\t0\t0\t0\t0\t74\t76\t1.39999997615814\t5136\t1830157\t96\n+7\t2\t6741\t458\t380\t2\t2.20000004768372\t129326\t509497\t17.3700008392334\t57.2900009155273\t93.2099990844727\t179.839996337891\t0.800000011920929\t68.0599975585938\t79.8399963378906\t147.110000610352\t342.320007324219\t1\t267\t986973\t70\n+8\t1\t2451\t248\t223\t5.40000009536743\t3.40000009536743\t87278\t58133\t0\t0\t0\t0\t0\t0.400000005960465\t0.800000011920929\t243.399993896484\t361.600006103516\t4.19999980926514\t858\t1541506\t84\n+6\t2\t1080\t164\t85\t0.400000005960465\t0.600000023841858\t135663\t43467\t4.3899998664856\t7.78000020980835\t6.19000005722046\t0\t1.20000004768372\t1.20000004768372\t1.20000004768372\t45.310001373291\t102.98999786377\t3.40000009536743\t317\t1038767\t95\n+1\t0\t226\t12\t25\t0.400000005960465\t0.400000005960465\t441\t13364\t0\t0\t0\t0\t0\t0\t0\t36.4000015258789\t33.4000015258789\t1\t7645\t1869835\t97\n+26\t4\t5240\t304\t299\t3.58999991416931\t4.78999996185303\t523148\t603192\t4.19000005722046\t7.3899998664856\t23.5499992370605\t44.5099983215332\t0.400000005960465\t62.4799995422363\t112.379997253418\t237.520004272461\t429.940002441406\t5\t769\t977341\t63\n+45\t59\t2875\t238\t128\t1.60000002384186\t6.40000009536743\t184912\t159603\t0\t0\t0\t0\t0.400000005960465\t13\t14.3999996185303\t167\t375.799987792969\t3.20000004768372\t890\t1545994\t86\n+21\t13\t1258\t92\t64\t0.400000005960465\t0.400000005960465\t27604\t35912\t0\t0\t0\t0\t0\t0.200000002980232\t0.200000002980232\t31\t44.2000007629395\t2.20000004768372\t1143\t1714018\t96\n+18\t13\t4475\t699\t425\t4.19999980926514\t1.20000004768372\t557374\t557281\t0\t0\t0\t0\t0\t6.19999980926514\t8.80000019073486\t207.399993896484\t373.200012207031\t1.5\t567\t1040643\t74\n+1\t0\t225\t14\t22\t0.200000002980232\t0.200000002980232\t5448\t67049\t0\t0\t0\t0\t0\t0\t0\t23.5499992370605\t19.3600006103516\t1\t6935\t1855302\t97\n+12\t11\t1377\t128\t97\t0.600000023841858\t0.600000023841858\t51717\t23905\t11.3999996185303\t18.3999996185303\t49\t129\t3\t2.20000004768372\t2.40000009536743\t109.199996948242\t138.800003051758\t1\t189\t1128397\t90\n+1\t1\t197\t14\t30\t0.200000002980232\t0.200000002980232\t6990\t11710\t0\t0\t0\t0\t0\t0\t0\t15.6000003814697\t16.7999992370605\t1\t6136\t1856768\t97\n+1\t0\t3517\t212\t133\t0.200000002980232\t0.200000002980232\t46686\t203317\t12.5699996948242\t27.3500003814697\t30.9400005340576\t15.3699998855591\t0.600000023841858\t1.39999997615814\t1.79999995231628\t23.75\t57.8800010681152\t2\t448\t1008695\t87\n+0\t0\t230\t34\t24\t0.200000002980232\t0.200000002980232\t110524\t36306\t0\t0\t0\t0\t0\t5\t9.80000019073486\t14.1999998092651\t20.7999992370605\t1\t574'..b'929\t687553\t537619\t0\t0\t0\t0\t0.400000005960465\t0.200000002980232\t0.200000002980232\t92.5999984741211\t137.399993896484\t552\t89\t11\t0\n+11\t2\t3354\t380\t249\t0.600000023841858\t2\t361171\t268701\t13.7700004577637\t35.3300018310547\t63.6699981689453\t103.190002441406\t1.39999997615814\t30.3400001525879\t46.9099998474121\t72.8499984741211\t280.440002441406\t3\t273\t1016677\t77\n+5\t2\t2747\t308\t162\t0.400000005960465\t1.78999996185303\t860758\t73164\t3.77999997138977\t8.17000007629395\t11.3500003814697\t16.9300003051758\t0.400000005960465\t5.38000011444092\t6.36999988555908\t34.4599990844727\t56.1800003051758\t6\t141\t1092602\t87\n+12\t1\t3302\t508\t410\t9.60000038146973\t3.20000004768372\t468033\t12205\t0\t0\t0\t0\t0\t0\t0\t484.200012207031\t699.400024414063\t2.59999990463257\t7838\t1862467\t76\n+1\t0\t1149\t78\t64\t0.200000002980232\t0.200000002980232\t26968\t17900\t0\t0\t0\t0\t0\t0.800000011920929\t0.800000011920929\t15.8000001907349\t69.4000015258789\t2.70000004768372\t693\t1062730\t95\n+41\t58\t4876\t270\t204\t0.200000002980232\t0.200000002980232\t63051\t106043\t3\t5\t5\t0\t0.400000005960465\t1.79999995231628\t2\t15.3999996185303\t34.4000015258789\t1.60000002384186\t296\t1067949\t86\n+1\t1\t215\t24\t24\t0.200000002980232\t0.200000002980232\t4481\t10470\t0\t0\t0\t0\t0\t0\t0\t20.7999992370605\t16.7999992370605\t1\t8767\t1835301\t98\n+3\t1\t1969\t101\t91\t0.800000011920929\t1.20000004768372\t245698\t56669\t0\t0\t0\t0\t0\t13.9700002670288\t14.3699998855591\t32.1399993896484\t79.4400024414063\t2.40000009536743\t1855\t1547837\t94\n+11\t0\t4176\t277\t193\t1.39999997615814\t1.39999997615814\t302317\t141525\t14.7700004577637\t49.2999992370605\t147.5\t328.140014648437\t0.800000011920929\t34.5299987792969\t49.0999984741211\t267.859985351562\t333.329986572266\t3\t145\t999352\t74\n+7\t1\t3273\t483\t242\t1.79999995231628\t1.79999995231628\t181856\t62053\t0\t0\t0\t0\t0\t2.20000004768372\t2.40000009536743\t71\t149.399993896484\t3.20000004768372\t2893\t1734720\t86\n+3\t0\t1492\t143\t129\t0.800000011920929\t1\t34802\t41505\t5.3899998664856\t7.57999992370606\t20.9599990844727\t37.5200004577637\t0\t20.1599998474121\t20.5599994659424\t53.2900009155273\t138.720001220703\t3.59999990463257\t164\t1027489\t90\n+18\t28\t187\t15\t14\t0.200000002980232\t0.200000002980232\t546\t5216\t0\t0\t0\t0\t0\t0\t0\t15.6000003814697\t16.7999992370605\t2\t578\t1710862\t98\n+1\t0\t2903\t411\t299\t0.800000011920929\t2.20000004768372\t96619\t33746\t0.600000023841858\t0.800000011920929\t0.800000011920929\t0\t0.200000002980232\t7.78000020980835\t12.1800003051758\t63.8699989318848\t158.880004882813\t2.20000004768372\t254\t1101202\t85\n+8\t0\t5541\t469\t407\t7.59999990463257\t2.20000004768372\t209351\t11982\t0\t0\t0\t0\t0.200000002980232\t0.200000002980232\t0.200000002980232\t372\t544.400024414063\t3.59999990463257\t482\t1744770\t68\n+0\t0\t1569\t42\t37\t0.200000002980232\t0.200000002980232\t12811\t13660\t0\t0\t0\t0\t0\t0.200000002980232\t0.200000002980232\t15.6000003814697\t16.7999992370605\t1.20000004768372\t5964\t1818256\t97\n+3\t1\t406\t43\t30\t2\t2\t92514\t42969\t0\t0\t0\t0\t0\t2.40000009536743\t4.40999984741211\t188.580001831055\t163.529998779297\t1.39999997615814\t11490\t1885199\t90\n+0\t0\t1385\t56\t52\t0.200000002980232\t0.200000002980232\t12446\t20066\t1.60000002384186\t2\t2\t0\t0.400000005960465\t1.60000002384186\t2\t15.6000003814697\t17\t1\t149\t1750992\t97\n+39\t55\t478\t79\t65\t0.800000011920929\t0.800000011920929\t18849\t12080\t0\t0\t0\t0\t0\t1.60000002384186\t1.60000002384186\t66.4700012207031\t64.6699981689453\t2.59999990463257\t807\t1750812\t88\n+16\t11\t7188\t496\t378\t4.59999990463257\t10.8000001907349\t219020\t80489\t1.20000004768372\t2.20000004768372\t1.79999995231628\t0\t0.800000011920929\t8.39999961853027\t12.3999996185303\t243\t611.599975585937\t2.79999995231628\t345\t1001160\t76\n+62\t90\t2492\t146\t124\t0.200000002980232\t0.200000002980232\t117979\t82643\t0\t0\t0\t0\t0\t5.40000009536743\t8.60000038146973\t21.6000003814697\t52\t1.70000004768372\t910\t994222\t87\n+15\t14\t2060\t534\t207\t0.200000002980232\t0.200000002980232\t638967\t667864\t0\t0\t0\t0\t0\t0.600000023841858\t0.600000023841858\t23.2000007629395\t55.5999984741211\t1.70000004768372\t351\t1044085\t91\n+39\t17\t4118\t358\t218\t6.19000005722046\t5.78999996185303\t596924\t159901\t13.9700002670288\t41.3199996948242\t148.699996948242\t196.009994506836\t5.78999996185303\t26.1499996185303\t51.5\t240.720001220703\t569.460021972656\t1\t208\t1081980\t72\n'