From: Jeremy Conlin <jeremit0@gm...>  20080912 20:16:56
Attachments:
Message as HTML

First question:I know I can do pylab.loglog() to get a loglog plot. I would like to create a loglinear plot. How can I do this? Second question: I would like to plot two sequences on the same figure with two different yscales, one scale shown on the left and one scale shown on the right. How can I do this? Thanks in advance, Jeremy 
From: Jeff Whitaker <jswhit@fa...>  20080912 20:31:13

Jeremy Conlin wrote: > First question: > I know I can do pylab.loglog() to get a loglog plot. I would like to > create a loglinear plot. How can I do this? semilogx or semilogy: semilogy <http://matplotlib.sourceforge.net/matplotlib.pyplot.html#semilogy>(*args, **kwargs) Make a plot with log scaling on the *y* axis. > > Second question: > I would like to plot two sequences on the same figure with two > different yscales, one scale shown on the left and one scale shown on > the right. How can I do this? twiny: ax = twiny <http://matplotlib.sourceforge.net/matplotlib.axes.html#Axestwiny>;() create a twin of Axes <http://matplotlib.sourceforge.net/matplotlib.axes.html#Axes>; for generating a plot with a shared yaxis but independent x axis. The xaxis of self will have ticks on bottom and the returned axes will have ticks on the top Jeff > > Thanks in advance, > Jeremy >  > >  > This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > Build the coolest Linux based applications with Moblin SDK & win great prizes > Grand prize is a trip for two to an Open Source event anywhere in the world > http://moblincontest.org/redirect.php?banner_id=100&url=/ >  > > _______________________________________________ > Matplotlibusers mailing list > Matplotlibusers@... > https://lists.sourceforge.net/lists/listinfo/matplotlibusers >  Jeffrey S. Whitaker Phone : (303)4976313 Meteorologist FAX : (303)4976449 NOAA/OAR/PSD R/PSD1 Email : Jeffrey.S.Whitaker@... 325 Broadway Office : Skaggs Research Cntr 1D113 Boulder, CO, USA 803033328 Web : http://tinyurl.com/5telg 
From: Jeremy Conlin <jeremit0@gm...>  20080913 03:58:24
Attachments:
Message as HTML

On Fri, Sep 12, 2008 at 4:31 PM, Jeff Whitaker <jswhit@...> wrote: > Jeremy Conlin wrote: > >> First question: >> I know I can do pylab.loglog() to get a loglog plot. I would like to >> create a loglinear plot. How can I do this? >> > > semilogx or semilogy: > > > > semilogy < > http://matplotlib.sourceforge.net/matplotlib.pyplot.html#semilogy>(*args, > **kwargs) > > Make a plot with log scaling on the *y* axis. > >> >> Second question: >> I would like to plot two sequences on the same figure with two different >> yscales, one scale shown on the left and one scale shown on the right. How >> can I do this? >> > > twiny: > > > ax = twiny > <http://matplotlib.sourceforge.net/matplotlib.axes.html#Axestwiny>;() > create a twin of Axes > <http://matplotlib.sourceforge.net/matplotlib.axes.html#Axes>; for > generating a plot with a shared > yaxis but independent x axis. The xaxis of self will have > ticks on bottom and the returned axes will have ticks on the > top > > Jeff > >> Thanks for that information, that is what I needed. But now I come up with a separate problem. I have the following in my code: pylab.plot(n, S, 'b.', label='x') pylab.legend() ax2 = pylab.twinx() pylab.plot(n, mean, 'r',label="mean") ax2.yaxis.tick_right() pylab.legend() Both plots are shown with the appropriate axes, but only the second plot is listed in the legend. If I only have the first, then only the first plot will be listed. Please help. Jeremy 
From: Jeff Whitaker <jswhit@fa...>  20080913 12:50:44

Jeremy Conlin wrote: > > > On Fri, Sep 12, 2008 at 4:31 PM, Jeff Whitaker <jswhit@... > <mailto:jswhit@...>> wrote: > > Jeremy Conlin wrote: > > First question: > I know I can do pylab.loglog() to get a loglog plot. I would > like to create a loglinear plot. How can I do this? > > > semilogx or semilogy: > > > > semilogy > <http://matplotlib.sourceforge.net/matplotlib.pyplot.html#semilogy>(*args, > **kwargs) > > Make a plot with log scaling on the *y* axis. > > > Second question: > I would like to plot two sequences on the same figure with two > different yscales, one scale shown on the left and one scale > shown on the right. How can I do this? > > > twiny: > > > ax = twiny > > <http://matplotlib.sourceforge.net/matplotlib.axes.html#Axestwiny>;() > create a twin of Axes > <http://matplotlib.sourceforge.net/matplotlib.axes.html#Axes>; > for generating a plot with a shared > yaxis but independent x axis. The xaxis of self will have > ticks on bottom and the returned axes will have ticks on the > top > > Jeff > > > Thanks for that information, that is what I needed. But now I come up > with a separate problem. I have the following in my code: > > pylab.plot(n, S, 'b.', label='x') > pylab.legend() > ax2 = pylab.twinx() > pylab.plot(n, mean, 'r',label="mean") > ax2.yaxis.tick_right() > pylab.legend() > > Both plots are shown with the appropriate axes, but only the second > plot is listed in the legend. If I only have the first, then only the > first plot will be listed. Please help. > > Jeremy Jeremy: The problem is that the legends are plotting on top of each other. Try using 'loc=1' for the first one and 'loc=2' for the second one. Jeff  Jeffrey S. Whitaker Phone : (303)4976313 NOAA/OAR/CDC R/PSD1 FAX : (303)4976449 325 Broadway Boulder, CO, USA 803053328 
From: John Owens <john_owens@ya...>  20081124 02:46:05

Jeff Whitaker wrote: > > Jeremy Conlin wrote: >> >> >> Thanks for that information, that is what I needed. But now I come up >> with a separate problem. I have the following in my code: >> >> pylab.plot(n, S, 'b.', label='x') >> pylab.legend() >> ax2 = pylab.twinx() >> pylab.plot(n, mean, 'r',label="mean") >> ax2.yaxis.tick_right() >> pylab.legend() >> >> Both plots are shown with the appropriate axes, but only the second >> plot is listed in the legend. If I only have the first, then only the >> first plot will be listed. Please help. >> >> Jeremy > Jeremy: The problem is that the legends are plotting on top of each > other. Try using 'loc=1' for the first one and 'loc=2' for the second > one. > What if I wanted one legend with both entries in it, rather than two separate legends with a different entry in each? Is that possible? That's more desirable than two separate legends. JDO  View this message in context: http://www.nabble.com/Twoquestionsregardingaxisscalingtp19463338p20654006.html Sent from the matplotlib  users mailing list archive at Nabble.com. 
From: JaeJoon Lee <lee.joon@gm...>  20081124 06:01:48

> > What if I wanted one legend with both entries in it, rather than two > separate legends with a different entry in each? Is that possible? That's > more desirable than two separate legends. > Check http://www.nabble.com/displayingalegendfromadifferentsubplottd18447966.html#a18447966 The legend() function lets you explicitly set what items you want to show, regardless which axes they are from. JJ 