I currently have code that calls matplotlib.pylab.plot
multiple times to display multiple sets of data on the same screen, and Matplotlib scales each to the global min and max, considering all plots. Is there a way to ask it to scale each plot independently, to the min and max of that particular plot?
views:
1053answers:
2
+2
A:
There's no direct support for this, but here's some code from a mailing list posting that illlustrates two independent vertical axes:
x=arange(10)
y1=sin(x)
y2=10*cos(x)
rect=[0.1,0.1,0.8,0.8]
a1=axes(rect)
a1.yaxis.tick_left()
plot(x,y1)
ylabel('axis 1')
xlabel('x')
a2=axes(rect,frameon=False)
a2.yaxis.tick_right()
plot(x,y2)
a2.yaxis.set_label_position('right')
ylabel('axis 2')
a2.set_xticks([])
Jouni K. Seppänen
2009-03-15 12:14:35
A:
This is how you create a single plot (add_subplot(1,1,1)) and limit the scale on the y-axes.
myFig = figure()
myPlot = self.figure.add_subplot(1,1,1)
myPlot.plot([1,2,3,4,5], [5,4,3,2,1], '+r')
myPlot.set_ylim(1,5) # Limit y-axes min 1, max 5
Informant
2010-07-20 14:46:26