Assume the csv file is called a.csv, then preprocess it a bit with this command:

<a.csv tr , \\t | tail -n+2 >a.tsv

Now start gnuplot, and enter the following commands:

set timefmt "%m/%d/%Y" + set xdata time set key outside below plot \ "a.tsv" using 1:4 title "128", \ "a.tsv" using 1:5 title "440", \ "a.tsv" using 1:6 title "1024", \ "a.tsv" using 1:7 title "Mixed"

Feel free to change the commands if you want to change the formatting, or use the set terminal and set output commands to save the plot as an image.

See also Plot a spiral with gnuplot about the general idea of using gnuplot in perl, and Re: Draw chart as an example that uses times as one coordinate.


In reply to Re: parse a csv file and create array of arrays and then plot the data by ambrus
in thread parse a csv file and create array of arrays and then plot the data by kamal

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.