What kind of graph plot am I looking for?
January 26, 2011 1:22 AM   Subscribe

I have a series of tables describing a set of data and their values for certain points in time. I want to create a multi-line chart from this data so I can see the growth curves. Is there a name for this kind of plot? It must be a solved problem and some tools to do this but I can't google for it if I don't know the name of what I want.

Specifically, while doing some program debugging, I've been profiling of memory usage of my application. I want to see what objects are growing the fastest in order to pinpoint this memory leak I'm trying to track down. I tried to be generic in my question since my use case isn't really what I want know here.
posted by rdhatt to Science & Nature (7 answers total) 1 user marked this as a favorite
Line charts?
posted by elgilito at 1:53 AM on January 26, 2011

Sounds like line graphs/charts to me. Excel will do this.
posted by jon1270 at 2:03 AM on January 26, 2011

Hrmm...appears I didn't phrase my question correctly. I know I want a line chart. I have a set of data tables that I want use to create the line chart. What I'm looking for is if the conversion process has a name. So that I can then find a tool that does that process.
posted by rdhatt at 2:14 AM on January 26, 2011

Excel can draw line charts from separate tables (use Ctrl to select the series). I'm not sure the method has a name though.
posted by elgilito at 2:22 AM on January 26, 2011

You might want to look at gnuplot or one of the frontends. I'm sorta assuming you have data like:

# ts obj1_mem obj2_mem
1 100 100
2 101 102
3 104 102

Gnuplot is one of the swiss army knife types of plotting tool that you can just write up a config file and say "time in col1, y1 in colN, y2 in colN", create graph. It's simple text file input to GIF/PNG/PS/etc image output.
posted by zengargoyle at 2:44 AM on January 26, 2011 [1 favorite]

i'm not sure if the process of converting raw data to a format usable for charting has a standard name. however, R, specifically using the ggplot2 module, is born for this task.

i'll give you an example from work, closely related to yours. i was debugging memory usage on our platform, which is essentially a solaris operating system and two massive, massive in-memory processes. what's bizarre is that the solaris OS takes up a variable and non-trivial amount of memory, and i eventually got to the bottom of this by:
  • collecting memory usage data and converting it to CSV using python, like:
    timestamp,total_process_rss,kernel_size,page_cache_size,non_kernel_size,used_memory 2011-01-18 18:00:22,1323,626,1090,2288,2052.6 2011-01-18 18:00:30,1328,626,997,2202,2058.1 2011-01-18 18:00:38,1334,626,680,1891,2060.7 2011-01-18 18:00:47,1341,626,464,1681,2061.1
  • write a little R script, source code available here.
  • get the following image, available here.
in ggplot2 the concept of aligning several charts together is referred to as facets.

posted by asymptotic at 5:10 AM on January 26, 2011

aagrgrh, the CSV file output got garbled...i think you get the idea.
posted by asymptotic at 5:11 AM on January 26, 2011

« Older Grammarfilter: In the Pittsbur...   |  How can I add line breaks to a... Newer »
This thread is closed to new comments.