Which multi-axes, multi-scale plotting tool to use?
-
21-09-2019 - |
Question
I am looking for plotting tools capable of using more than one or two vertical axes with different scales, like for instance:
alt text http://www.mathworks.com/matlabcentral/fx_files/9016/1/addaxis_screenshot.jpg
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.
Solution
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.
OTHER TIPS
Chaco can do this. See the following examples:
Stacked Axis plot: Source Screenshot of stacked axis plot http://www.enthought.com/~pwang/chaco/stacked_axes.png
Multi-Y plot (placing multiple axes on a plot's frame): Source Screenshot of multiple y-axis plot http://www.enthought.com/~pwang/chaco/multi-y.png
According to the GNU plot, you can have upto 2 axii on GNU plot per chart.
Pretty sure you could do this in matplotlib
Failing that there are a lot of links on that wikipedia page for other plotting libraries.
matlab
can do this
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.
MathGL can plot with multiple axis (see this sample). It is GPL (LGPL for core) library.