Screenshot instructions:
Windows
Mac
Red Hat Linux
Ubuntu
Click URL instructions:
Rightclick on ad, choose "Copy Link", then paste here →
(This may not be possible with some types of ads)
From: Ondrej Certik <ondrej@ce...>  20090430 05:15:20

On Fri, Apr 24, 2009 at 1:10 PM, Sandro Tosi <morph@...> wrote: > Hi Ondrej, > nice to see you here :) Nice to see you too! :) > > On Fri, Apr 24, 2009 at 22:02, Ondrej Certik <ondrej@...> wrote: >> Hi, >> >> is there a way to have one plot with two functions, one using some >> scale, the other one a different scale and show for example one scale >> on the left, the other scale on the right? > > sure, twinx() is what you're looking for; here is a simple example: > > import matplotlib.pyplot as plt > import numpy as np > x = np.arange(0., np.e, 0.01) > y1 = np.exp(x) > y2 = np.log(x) > fig = plt.figure() > ax1 = fig.add_subplot(111) > ax1.plot(x, y1) > ax1.set_ylabel('Y values for exp(x)') > ax2 = ax1.twinx() > ax2.plot(x, y2, 'r') > ax2.set_xlim([0,np.e]) > ax2.set_ylabel('Y values for ln(x)') > ax2.set_xlabel('Same X for both exp(x) and ln(x)') > > The values on X has to be of the same scale, tough, else the graph > would look really weird. Thanks a lot for the code. That worked. I was meeting some deadline, so I forgot to reply that it worked. Thanks Ryan and Jouni as well! Ondrej 