views:

375

answers:

7

I am looking for plotting tools capable of using more than one or two vertical axes with different scales, like for instance:

alt text

The goal is to plot several time series with different ranges in a same plot. For instance, I could have:

  • Time series 1 with range [-1, 1]
  • Time series 2 with range [-10, +10]
  • Time series 3 with range [0, 1500]
  • Time series 4 with range [0.5, 0.9]

Ideally I could plot each time series in its own axis with its own range, as shown in the image.

Which tools or libraries do you know that can do this?

Note: this question is related to this one, but I'm looking for more possibilities than Matlab.

+2  A: 

According to the GNU plot, you can have upto 2 axii on GNU plot per chart.

monksy
2 axes are not enough... the ranges of the data are normally very different and I can't group them in the same axis.
Pablo Rodriguez
I understand, I'm just stating that it is a possiblilty to have more than one, but no more than two (unless there is a way to draw one manually that I don't know about)
monksy
+2  A: 

matlab can do this

ufukgun
Yes, you can use the addaxis component from the Matlab File Exchange, but I am looking for more alternatives.
Pablo Rodriguez
+2  A: 

Pretty sure you could do this in matplotlib

Failing that there are a lot of links on that wikipedia page for other plotting libraries.

Simon
+3  A: 

You can do this in R. See this R-wiki page for an example.

This can also be very easy using the doubleYScale function, as in these examples.

Shane
The wiki link was broken, I think I've pointed it at the correct page
therefromhere
+2  A: 

not sure if this what you want, but ZedGraph supports multiple axes. it's a .net component, so you'd have to write some code to get the data in there, but it's very easy to use.

toasteroven
+3  A: 

Chaco can do this. See the following examples:

Stacked Axis plot: Source Screenshot of stacked axis plot

Multi-Y plot (placing multiple axes on a plot's frame): Source Screenshot of multiple y-axis plot

Peter Wang
I didn't know it. Thanks!
Pablo Rodriguez
+1  A: 

Somewhere I read (I cannot seem to find the reference now) that multiscale plots were not recommended, as they can convey false relationships between variables. Please consider showing the information in a different way.

AnotherOne