diff options
| author | Björn B. Brandenburg <bbb@cs.unc.edu> | 2010-03-19 10:22:37 -0400 |
|---|---|---|
| committer | Björn B. Brandenburg <bbb@cs.unc.edu> | 2010-03-19 10:22:37 -0400 |
| commit | 47c9d5df446cd06ae566126135e26cb9279b35f2 (patch) | |
| tree | 8b3e98d8f14154f8b68943ea8558e84a9a88ebcd /README | |
| parent | fbfac3ea825a863400f7196750f016b6a6a0d48d (diff) | |
Add small example.
Diffstat (limited to 'README')
| -rw-r--r-- | README | 33 |
1 files changed, 33 insertions, 0 deletions
| @@ -0,0 +1,33 @@ | |||
| 1 | This is a simple, quick-n-dirty wrapper for plotting .csv files with | ||
| 2 | Gnuplot. | ||
| 3 | |||
| 4 | The tool will remove comments (lines starting with a '#' character) before | ||
| 5 | passing the data to Gnuplot. This makes it possible to have experimental | ||
| 6 | setup and date information encoded in the .csv file, which is beneficial | ||
| 7 | for archival reasons. | ||
| 8 | |||
| 9 | You can plot the example file to a PNG graph using the following command: | ||
| 10 | |||
| 11 | ./gnuplot.py -o example -f png --xlabel "Time" --ylabel "Supply Bound" \ | ||
| 12 | example.csv 1 2 "Supply Bound Function" | ||
| 13 | |||
| 14 | |||
| 15 | In general, each curve that you want to plot in a graph is defined by four | ||
| 16 | arguments: | ||
| 17 | |||
| 18 | ./gnuplot.py [OPTIONS] \ | ||
| 19 | <file1> <xcolumn1> <ycolumn1> <title1> \ | ||
| 20 | <file2> <xcolumn2> <ycolumn2> <title2> \ | ||
| 21 | ... and so on ... | ||
| 22 | |||
| 23 | For large experiments with many graphs, it is more convenient to wrap gnuplot.py | ||
| 24 | in a project-specific plotting script. Have a look at plot.py and plot_ohead.py | ||
| 25 | to see how I did it. Basically, the scrips infer what to plot and how to name | ||
| 26 | and label the graphs from the name of each .csv file. | ||
| 27 | |||
| 28 | For example, the file name 'hard_rtss09_dist=uni_medium_250.csv' encodes the | ||
| 29 | following information: 1) it uses hard real-time schedulability tests, it was | ||
| 30 | using the RTSS'09 experimental setup and overheads, the task sets were generated | ||
| 31 | with uniform utilization from the range [0.1, 0.4] (medium), and periods were | ||
| 32 | distributed uniformly in [50, 250]. This is parsed by plot.py, which then | ||
| 33 | calls gnuplot.py to generate a graph with the correct labels and settings. | ||
