|
From: Sterling S. <sm...@fu...> - 2013-07-29 16:48:30
|
Chao,
From your description, it is clear that you are using a very customized application of axes placement and design. The only method that I see for replacing your current setup with Subplots (I use the upper case to denote the instances of the class, which do respond to the left/right/wspace parameters) is the following (untested):
{{{
fig,axs = plt.subplots(2,3)
for i,ax in enumerate(axs.flat):
ax.plot(time,data)
ymin,ymax = ax.get_ylim()
ax.set_ylim(ymin=ymin,ymax=ymin+2*(ymax-ymin))
labels = ax.get_yticklabels()
for l in labels:
if float(l.get_text()) > ymax:
l.set_visible(False)
ax2 = ax.twinx()
ymin,ymax = ax2.get_ylim()
ax2.set_ylim(ymin=ymax-2*(ymax-ymin),ymax=ymax)
labels = ax2.get_yticklabels()
for l in labels:
if float(l.get_text()) < ymin:
l.set_visible(False)
}}}
Some of this is inspired by http://matplotlib.org/examples/api/two_scales.html and similar examples/applications.
Hope that helps,
Sterling
On Jul 27, 2013, at 6:10AM, ChaoYue wrote:
> Hi, thanks.
>
> the attached is what I achieved so far. Looks quite nice.
>
> each subplot visible now actually contains two mat.axes.Axes object (with bottom and top spines invisible)
> which is created by using the fig.add_axes, before the place occupied by the two axes now is actually
> only one single subplot ojbect, which is created by using fig,axs = plt.subplots(2,3). something like this:
>
> for ax in axs.flatten():
> #some way to find the position of the two new axes
> sub1 = fig.add_axes(....)
> sub2 = fig.add_axes(....)
> fig.delaxes(ax)
>
> Now the problem is that all the original subplots have been removed, replaced by 2X6 mat.axes.Axes,
> But they don't respond to any operation in the interacitve window (like, you can use your mouse to select
> the left/righ/wspace etc....)
>
> I hope I am clear. thanks!
>
> cheers,
>
> Chao
>
> On Fri, Jul 26, 2013 at 5:55 PM, Sterling Smith [via matplotlib] <[hidden email]> wrote:
> Chao,
>
> You are right, fig.add_subplot does not support precise positioning. Why don't you send a picture of a sample layout you have obtained with add_axes?
>
> -Sterling
>
> On Jul 26, 2013, at 1:26AM, ChaoYue wrote:
>
> > Dear Sterling,
> >
> > thanks for your answer. The idea is that I would like to add a subplot with precise position, as in the method of fig.add_axes?
> > Does fig.add_subplot support this, I tried fig.add_subplot(position=(0.2,0.2,0.1,0.1)) but it does not work...
> >
> > thanks!
> >
> > Chao
> >
> > On Thu, Jul 25, 2013 at 8:09 PM, Sterling Smith [via matplotlib] <[hidden email]> wrote:
>
> > Chao,
> >
> > plt.subplots returns a figure instance. Can you use the add_subplot method of that figure instance to make your new axes? If so, then I think that they should respond to the new requests for left/right/bottom/wspace space.
> >
> > -Sterling
> >
> > On Jul 25, 2013, at 10:06AM, Chao YUE wrote:
> >
> > > Dear all,
> > >
> > > First I make some subplots using the plt.subplots command,
> > > then I use mat.figure.Figure.delaxes to delete the axes, and add some small new ones
> > > in the same space by using mat.figure.Figure.add_axes, but I find after rendering the
> > > figure in the interative window, I cannot adjust the left/right/bottom/wspace etc in a
> > > interactive way, the old subplots that are generated using plt.subplots command will
> > > move, and the new ones generated using mat.figure.Figure.add_axes just don't
> > > move at all, so what should I do if I want the new ones also move? Because
> > > the interative window is really useful when you want to have figures quickly.
> > >
> > > thanks a lot for any hints.
> > >
> > > cheers,
> > >
> > > Chao
> > >
> > > --
> > > ***********************************************************************************
> > > Chao YUE
> > > Laboratoire des Sciences du Climat et de l'Environnement (LSCE-IPSL)
> > > UMR 1572 CEA-CNRS-UVSQ
> > > Batiment 712 - Pe 119
> > > 91191 GIF Sur YVETTE Cedex
> > > Tel: (33) 01 69 08 29 02; Fax:01.69.08.77.16
> > > ************************************************************************************
> > > ------------------------------------------------------------------------------
> > > See everything from the browser to the database with AppDynamics
> > > Get end-to-end visibility with application monitoring from AppDynamics
> > > Isolate bottlenecks and diagnose root cause in seconds.
> > > Start your free trial of AppDynamics Pro today!
> > > http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk_______________________________________________
> > > Matplotlib-users mailing list
>
> > > [hidden email]
> > > https://lists.sourceforge.net/lists/listinfo/matplotlib-users
> >
> >
> > ------------------------------------------------------------------------------
> > See everything from the browser to the database with AppDynamics
> > Get end-to-end visibility with application monitoring from AppDynamics
> > Isolate bottlenecks and diagnose root cause in seconds.
> > Start your free trial of AppDynamics Pro today!
> > http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
> > _______________________________________________
> > Matplotlib-users mailing list
> > [hidden email]
> > https://lists.sourceforge.net/lists/listinfo/matplotlib-users
> >
> >
> > If you reply to this email, your message will be added to the discussion below:
> > http://matplotlib.1069221.n5.nabble.com/how-to-make-mat-figure-Figure-add-axes-generated-axes-adjustable-with-the-interactive-tool-tp41610p41611.html
> > To start a new topic under matplotlib - users, email [hidden email]
> > To unsubscribe from matplotlib, click here.
>
> > NAML
> >
> >
> >
> > --
> > ***********************************************************************************
> > Chao YUE
> > Laboratoire des Sciences du Climat et de l'Environnement (LSCE-IPSL)
> > UMR 1572 CEA-CNRS-UVSQ
> > Batiment 712 - Pe 119
> > 91191 GIF Sur YVETTE Cedex
> > Tel: (33) 01 69 08 29 02; Fax:01.69.08.77.16
> > ************************************************************************************
> >
> > View this message in context: Re: how to make mat.figure.Figure.add_axes generated axes adjustable with the interactive tool?
> > Sent from the matplotlib - users mailing list archive at Nabble.com.
> > ------------------------------------------------------------------------------
> > See everything from the browser to the database with AppDynamics
> > Get end-to-end visibility with application monitoring from AppDynamics
> > Isolate bottlenecks and diagnose root cause in seconds.
> > Start your free trial of AppDynamics Pro today!
> > http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk_______________________________________________
> > Matplotlib-users mailing list
> > [hidden email]
> > https://lists.sourceforge.net/lists/listinfo/matplotlib-users
>
>
> ------------------------------------------------------------------------------
> See everything from the browser to the database with AppDynamics
> Get end-to-end visibility with application monitoring from AppDynamics
> Isolate bottlenecks and diagnose root cause in seconds.
> Start your free trial of AppDynamics Pro today!
> http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
> _______________________________________________
> Matplotlib-users mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
>
>
> If you reply to this email, your message will be added to the discussion below:
> http://matplotlib.1069221.n5.nabble.com/how-to-make-mat-figure-Figure-add-axes-generated-axes-adjustable-with-the-interactive-tool-tp41610p41615.html
> To start a new topic under matplotlib - users, email [hidden email]
> To unsubscribe from matplotlib, click here.
> NAML
>
>
>
> --
> ***********************************************************************************
> Chao YUE
> Laboratoire des Sciences du Climat et de l'Environnement (LSCE-IPSL)
> UMR 1572 CEA-CNRS-UVSQ
> Batiment 712 - Pe 119
> 91191 GIF Sur YVETTE Cedex
> Tel: (33) 01 69 08 29 02; Fax:01.69.08.77.16
> ************************************************************************************
>
> eg1.jpg (319K) Download Attachment
>
> View this message in context: Re: how to make mat.figure.Figure.add_axes generated axes adjustable with the interactive tool?
> Sent from the matplotlib - users mailing list archive at Nabble.com.
> ------------------------------------------------------------------------------
> See everything from the browser to the database with AppDynamics
> Get end-to-end visibility with application monitoring from AppDynamics
> Isolate bottlenecks and diagnose root cause in seconds.
> Start your free trial of AppDynamics Pro today!
> http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk_______________________________________________
> Matplotlib-users mailing list
> Mat...@li...
> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
|