You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
(12) |
Sep
(12) |
Oct
(56) |
Nov
(65) |
Dec
(37) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(59) |
Feb
(78) |
Mar
(153) |
Apr
(205) |
May
(184) |
Jun
(123) |
Jul
(171) |
Aug
(156) |
Sep
(190) |
Oct
(120) |
Nov
(154) |
Dec
(223) |
2005 |
Jan
(184) |
Feb
(267) |
Mar
(214) |
Apr
(286) |
May
(320) |
Jun
(299) |
Jul
(348) |
Aug
(283) |
Sep
(355) |
Oct
(293) |
Nov
(232) |
Dec
(203) |
2006 |
Jan
(352) |
Feb
(358) |
Mar
(403) |
Apr
(313) |
May
(165) |
Jun
(281) |
Jul
(316) |
Aug
(228) |
Sep
(279) |
Oct
(243) |
Nov
(315) |
Dec
(345) |
2007 |
Jan
(260) |
Feb
(323) |
Mar
(340) |
Apr
(319) |
May
(290) |
Jun
(296) |
Jul
(221) |
Aug
(292) |
Sep
(242) |
Oct
(248) |
Nov
(242) |
Dec
(332) |
2008 |
Jan
(312) |
Feb
(359) |
Mar
(454) |
Apr
(287) |
May
(340) |
Jun
(450) |
Jul
(403) |
Aug
(324) |
Sep
(349) |
Oct
(385) |
Nov
(363) |
Dec
(437) |
2009 |
Jan
(500) |
Feb
(301) |
Mar
(409) |
Apr
(486) |
May
(545) |
Jun
(391) |
Jul
(518) |
Aug
(497) |
Sep
(492) |
Oct
(429) |
Nov
(357) |
Dec
(310) |
2010 |
Jan
(371) |
Feb
(657) |
Mar
(519) |
Apr
(432) |
May
(312) |
Jun
(416) |
Jul
(477) |
Aug
(386) |
Sep
(419) |
Oct
(435) |
Nov
(320) |
Dec
(202) |
2011 |
Jan
(321) |
Feb
(413) |
Mar
(299) |
Apr
(215) |
May
(284) |
Jun
(203) |
Jul
(207) |
Aug
(314) |
Sep
(321) |
Oct
(259) |
Nov
(347) |
Dec
(209) |
2012 |
Jan
(322) |
Feb
(414) |
Mar
(377) |
Apr
(179) |
May
(173) |
Jun
(234) |
Jul
(295) |
Aug
(239) |
Sep
(276) |
Oct
(355) |
Nov
(144) |
Dec
(108) |
2013 |
Jan
(170) |
Feb
(89) |
Mar
(204) |
Apr
(133) |
May
(142) |
Jun
(89) |
Jul
(160) |
Aug
(180) |
Sep
(69) |
Oct
(136) |
Nov
(83) |
Dec
(32) |
2014 |
Jan
(71) |
Feb
(90) |
Mar
(161) |
Apr
(117) |
May
(78) |
Jun
(94) |
Jul
(60) |
Aug
(83) |
Sep
(102) |
Oct
(132) |
Nov
(154) |
Dec
(96) |
2015 |
Jan
(45) |
Feb
(138) |
Mar
(176) |
Apr
(132) |
May
(119) |
Jun
(124) |
Jul
(77) |
Aug
(31) |
Sep
(34) |
Oct
(22) |
Nov
(23) |
Dec
(9) |
2016 |
Jan
(26) |
Feb
(17) |
Mar
(10) |
Apr
(8) |
May
(4) |
Jun
(8) |
Jul
(6) |
Aug
(5) |
Sep
(9) |
Oct
(4) |
Nov
|
Dec
|
2017 |
Jan
(5) |
Feb
(7) |
Mar
(1) |
Apr
(5) |
May
|
Jun
(3) |
Jul
(6) |
Aug
(1) |
Sep
|
Oct
(2) |
Nov
(1) |
Dec
|
2018 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2020 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2025 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1
|
2
(6) |
3
|
4
(7) |
5
(6) |
6
(1) |
7
(11) |
8
(2) |
9
(9) |
10
(1) |
11
|
12
(11) |
13
(6) |
14
(25) |
15
|
16
(6) |
17
(6) |
18
(13) |
19
(13) |
20
(5) |
21
|
22
(9) |
23
(1) |
24
|
25
|
26
|
27
|
28
|
Hello list, A couple months ago, I spent quite a bit of time trying to figure out how to use Qt designer create a GUI with an embedded MPL window. Unfortunately, the Scipy cookbook page ( http://wiki.scipy.org/Cookbook/Matplotlib/Qt_with_IPython_and_Designer) is very outdated. A recent post ( http://matplotlib.1069221.n5.nabble.com/Re-Keep-list-of-figures-or-plots-and-flip-through-list-using-UI-td44961.html) brought up some questions about a use case very similar to mine, so I redid my example and was going to write a quick tutorial for the docs. Unfortunately, I'm not a Qt guru, so I thought that I would ask on the list for some advice. The OP and I were both interested in being able to have a list of figures that you could select from to change the plot window. The embedding examples in the docs create subclasses of FigureClass* and embed the plotting figure/axes/etc. This works but gets tricky, though, when trying to switch plots. Also, for interactive IPython work, I didn't like that the plotting objects were mixed in with all the QtGui.QWidget attributes, which makes introspective searching painful. My solution was to create a dictionary of matplotlib.figure.Figure objects that had all of the plotting stuff defined. Then when I select a new plot from the list, the old one is removed and a new FigureClass object is created using the selected Figure object. Has anyone else successfully done something like this? Is there a better way? Also, it seems if I zoom the current plot, change to a new plot, and change back, the zoom region is retained. Anyone know how to reset the zoom region? Attached is my example: "window.py" is the Designer-created main window and "custommpl.py" is the subclass of the main window that I wrote. It's about as short as I could make it. Thanks Ryan
On 2015年02月18日 9:52 AM, njs wrote: > Hi All, > > I'm having issues with quiver, and quiverkey() although, I have never > experienced these issues in the past. I attached an image to this post that > demonstrates that quiver_key() used to work for me, this image was generated > on 17-Jul-2014. However, if I run this exact same code (see below for the > code), the quiver key reference on the top right does not get plotted, but > the text will. I haven't changed anything, but I think there have been some > package updates between then and now. For what it's worth, I've tried many > different ways to generate the quiverkey() and haven't had any luck. Has > anyone else experienced similar issues? That's alarming! I can reproduce the problem even with the standard mpl example--the arrow is missing in 5 out of the 6 plots. I will file a github issue. Thanks for the report. Eric > > Thanks for any insights! > > Working quiverkey(): > <http://matplotlib.1069221.n5.nabble.com/file/n44968/qkey.png> > > quiverkey() doesn't work anymore...: > <http://matplotlib.1069221.n5.nabble.com/file/n44968/qkey_1.png> > > Code: > > fig = plt.figure(figsize=(12,12)) > map = Basemap(projection = 'cyl', llcrnrlat = -30, urcrnrlat = 90, \ > llcrnrlon = 0, urcrnrlon = 360, resolution = 'c') > [x,y] = N.meshgrid(lons,lats) > [x,y] = map(x,y) > [xulr,yulr] = N.meshgrid(lons1,lats1) > [xulr,yulr] = map(xulr,yulr) > clevs = N.arange(-50,51,5) > cs = map.contourf(x,y,hgt500aComp[lag,:,:],cmap='RdBu_r', > levels = clevs) > cs1 = map.contour(x,y,hgt500Comp[lag,:,:],N.arange(1110,1230,6), \ > colors='purple',linewidth=100,linestyle = 'dashed') > cs1 = map.contour(x,y,hgt500aComp[lag,:,:],levels = clevs, > colors = 'black') > > colors=[(244,2,255),(36,26,232),(255,255,255),(8,232,61),(224,255,0)] > cmap = mF.make_cmap(colors, position=None, bit=True) > clevs = N.arange(-30,30.025,.025) > cs2 = map.contourf(xulr,yulr,olrComp[lag,:,:],cmap=cmap, > levels = clevs) > Q = map.quiver(x[::2,::2],y[::2,::2],u850Comp[lag,::2,::2], > v850Comp[lag,::2,::2],width = 0.002,scale = 50) > map.drawcoastlines(linewidth = 1) > map.drawcountries(linewidth = 0.5) > map.fillcontinents(zorder = 0) > map.drawmeridians(N.arange(0,360,30)) > map.drawparallels(N.arange(-90,90,30)) > title = plt.title('Lag: {0} | Transition Cases | n = > {1}'.format(lag-30,len(cases))) > title.set_fontweight('bold') > axt = fig.add_axes([.15,.35,.3,.01]) > cbar = plt.colorbar(cs,cax = axt,orientation = 'horizontal') > cbar.set_label('500-hPa Anomaly (m)') > cbar.set_ticks(N.arange(-50,51,25)) > cs1.clabel(fmt = '%d') > axt = fig.add_axes([.58,.35,.3,.01]) > cbar2 = plt.colorbar(cs2,cax = axt,orientation = 'horizontal') > cbar2.set_label(r'OLR Anomaly ($W m^{-2}$)') > cbar2.set_ticks(N.arange(-30,31,10)) > qk = plt.quiverkey(Q,0.95,1.05,1.0,r'1 $m s^{-1}$',labelpos='E') > > > > -- > View this message in context: http://matplotlib.1069221.n5.nabble.com/quiverkey-doesn-t-plot-the-reference-vector-tp44968.html > Sent from the matplotlib - users mailing list archive at Nabble.com. > > ------------------------------------------------------------------------------ > Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server > from Actuate! Instantly Supercharge Your Business Reports and Dashboards > with Interactivity, Sharing, Native Excel Exports, App Integration & more > Get technology previously reserved for billion-dollar corporations, FREE > http://pubads.g.doubleclick.net/gampad/clk?id=190641631&iu=/4140/ostg.clktrk > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users >
Can you put in a pull request with those changes please? On Wed, Feb 18, 2015, 17:03 Jorge Scandaliaris <jor...@ya...> wrote: > Hi, > A recent commit against lib/matplotlib/backends/backend_qt5.py [1] causes > some errors in code that was working fine before. The error is as follows: > > ------------------------------------------------------------ > --------------- > TypeError Traceback (most recent call last) > /home/jscandal/sw/matplotlib/matplotlib.py3/lib/matplotlib/backends > /backend_qt5.py > in enterEvent(self, event) > 249 > 250 def enterEvent(self, event): > --> 251 FigureCanvasBase.enter_notify_event(self, event, > guiEvent=event) > 252 > 253 def leaveEvent(self, event): > > TypeError: enter_notify_event() got multiple values for argument 'guiEvent' > > ------------------------------------------------------------ > --------------- > TypeError Traceback (most recent call last) > /home/jscandal/sw/matplotlib/matplotlib.py3/lib/matplotlib/backends > /backend_qt5.py > in leaveEvent(self, event) > 253 def leaveEvent(self, event): > 254 QtWidgets.QApplication.restoreOverrideCursor() > --> 255 FigureCanvasBase.leave_notify_event(self, event, > guiEvent=event) > 256 > 257 def mousePressEvent(self, event): > > TypeError: leave_notify_event() got multiple values for argument 'guiEvent' > > > > Reverting the changes introduced by the commit in lines 251 and 255 of > backend_qt5.py seems to fix the issue, in my particular use case. > > Regards, > > Jorge > > > 1. > b72e0cd9e63f7cf4bec2908143c62c23666b674a > Author: Steven Silvester <ste...@ie...> > Date: Sun Feb 15 09:38:21 2015 -0600 > > Add guiEvent data to Qt backend > > > > ------------------------------------------------------------ > ------------------ > Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server > from Actuate! Instantly Supercharge Your Business Reports and Dashboards > with Interactivity, Sharing, Native Excel Exports, App Integration & more > Get technology previously reserved for billion-dollar corporations, FREE > http://pubads.g.doubleclick.net/gampad/clk?id=190641631& > iu=/4140/ostg.clktrk > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users >
Hi, A recent commit against lib/matplotlib/backends/backend_qt5.py [1] causes some errors in code that was working fine before. The error is as follows: --------------------------------------------------------------------------- TypeError Traceback (most recent call last) /home/jscandal/sw/matplotlib/matplotlib.py3/lib/matplotlib/backends /backend_qt5.py in enterEvent(self, event) 249 250 def enterEvent(self, event): --> 251 FigureCanvasBase.enter_notify_event(self, event, guiEvent=event) 252 253 def leaveEvent(self, event): TypeError: enter_notify_event() got multiple values for argument 'guiEvent' --------------------------------------------------------------------------- TypeError Traceback (most recent call last) /home/jscandal/sw/matplotlib/matplotlib.py3/lib/matplotlib/backends /backend_qt5.py in leaveEvent(self, event) 253 def leaveEvent(self, event): 254 QtWidgets.QApplication.restoreOverrideCursor() --> 255 FigureCanvasBase.leave_notify_event(self, event, guiEvent=event) 256 257 def mousePressEvent(self, event): TypeError: leave_notify_event() got multiple values for argument 'guiEvent' Reverting the changes introduced by the commit in lines 251 and 255 of backend_qt5.py seems to fix the issue, in my particular use case. Regards, Jorge 1. b72e0cd9e63f7cf4bec2908143c62c23666b674a Author: Steven Silvester <ste...@ie...> Date: Sun Feb 15 09:38:21 2015 -0600 Add guiEvent data to Qt backend
Hi All, I'm having issues with quiver, and quiverkey() although, I have never experienced these issues in the past. I attached an image to this post that demonstrates that quiver_key() used to work for me, this image was generated on 17-Jul-2014. However, if I run this exact same code (see below for the code), the quiver key reference on the top right does not get plotted, but the text will. I haven't changed anything, but I think there have been some package updates between then and now. For what it's worth, I've tried many different ways to generate the quiverkey() and haven't had any luck. Has anyone else experienced similar issues? Thanks for any insights! Working quiverkey(): <http://matplotlib.1069221.n5.nabble.com/file/n44968/qkey.png> quiverkey() doesn't work anymore...: <http://matplotlib.1069221.n5.nabble.com/file/n44968/qkey_1.png> Code: fig = plt.figure(figsize=(12,12)) map = Basemap(projection = 'cyl', llcrnrlat = -30, urcrnrlat = 90, \ llcrnrlon = 0, urcrnrlon = 360, resolution = 'c') [x,y] = N.meshgrid(lons,lats) [x,y] = map(x,y) [xulr,yulr] = N.meshgrid(lons1,lats1) [xulr,yulr] = map(xulr,yulr) clevs = N.arange(-50,51,5) cs = map.contourf(x,y,hgt500aComp[lag,:,:],cmap='RdBu_r', levels = clevs) cs1 = map.contour(x,y,hgt500Comp[lag,:,:],N.arange(1110,1230,6), \ colors='purple',linewidth=100,linestyle = 'dashed') cs1 = map.contour(x,y,hgt500aComp[lag,:,:],levels = clevs, colors = 'black') colors=[(244,2,255),(36,26,232),(255,255,255),(8,232,61),(224,255,0)] cmap = mF.make_cmap(colors, position=None, bit=True) clevs = N.arange(-30,30.025,.025) cs2 = map.contourf(xulr,yulr,olrComp[lag,:,:],cmap=cmap, levels = clevs) Q = map.quiver(x[::2,::2],y[::2,::2],u850Comp[lag,::2,::2], v850Comp[lag,::2,::2],width = 0.002,scale = 50) map.drawcoastlines(linewidth = 1) map.drawcountries(linewidth = 0.5) map.fillcontinents(zorder = 0) map.drawmeridians(N.arange(0,360,30)) map.drawparallels(N.arange(-90,90,30)) title = plt.title('Lag: {0} | Transition Cases | n = {1}'.format(lag-30,len(cases))) title.set_fontweight('bold') axt = fig.add_axes([.15,.35,.3,.01]) cbar = plt.colorbar(cs,cax = axt,orientation = 'horizontal') cbar.set_label('500-hPa Anomaly (m)') cbar.set_ticks(N.arange(-50,51,25)) cs1.clabel(fmt = '%d') axt = fig.add_axes([.58,.35,.3,.01]) cbar2 = plt.colorbar(cs2,cax = axt,orientation = 'horizontal') cbar2.set_label(r'OLR Anomaly ($W m^{-2}$)') cbar2.set_ticks(N.arange(-30,31,10)) qk = plt.quiverkey(Q,0.95,1.05,1.0,r'1 $m s^{-1}$',labelpos='E') -- View this message in context: http://matplotlib.1069221.n5.nabble.com/quiverkey-doesn-t-plot-the-reference-vector-tp44968.html Sent from the matplotlib - users mailing list archive at Nabble.com.
Probably in the embedding examples. There was an effort to start a mpl specific cook book a while a ago based around a wx/glade example but I have lost track of where that is. Tom On Wed, Feb 18, 2015, 12:49 Ryan Nelson <rne...@gm...> wrote: > Tom et al., > > I don't know about this exact application... However, a couple of months > ago, I asked on the Scipy mailing list about updating the Scipy cookbook > page for Qt/Matplotlib ( > http://wiki.scipy.org/Cookbook/Matplotlib/Qt_with_IPython_and_Designer), > but I never got a response. The cookbook example is terribly out of date, > so I worked out a pretty simple example that essentially reproduces the Qt > backend plotting window. See my post ( > http://mail.scipy.org/pipermail/scipy-dev/2014-December/020258.html) for > an initial version of the code. I may have updated it since that time. If > you are asking for an example for the MPL docs, I would be happy to write > my example up with some picts, if you could tell me where the most > appropriate place in the documentation would be for such an addition. > > (However, it sounds like Creator will supersede Designer for Qt5 so...) > > Ryan > > On Wed, Feb 18, 2015 at 12:31 PM, Thomas Caswell <tca...@gm...> > wrote: > >> A good tutorial on how to make mpl play nice with QtDesigner would be a >> useful thing to have in the documentation. It would be appreciated if you >> could take a crack at writing that up. >> >> Tom >> >> ---------- Forwarded message --------- >> From: tenspd137 . <dcd...@gm...> >> Date: Wed Feb 18 2015 at 12:25:10 PM >> Subject: Re: [Matplotlib-users] Keep list of figures or plots and flip >> through list using UI >> To: Thomas Caswell <tca...@gm...> >> >> >> Funny thing - shortly after I wrote you - I figured it out. I have a >> GUI/Dialog I created with designer that has a push button which cycles >> between two plots I stored in a list. If you would like to see my >> code, I would be more than happy to share. It isn't fabulous, but it >> show the mechanics. I will also take a look at what you just posted >> above. >> >> Much appreciated! >> >> -C >> >> >> >> >> On Wed, Feb 18, 2015 at 10:19 AM, Thomas Caswell <tca...@gm...> >> wrote: >> > Please ping the mailing list again (I cc'd the list on this). >> > >> > See >> > https://github.com/tacaswell/leidenfrost/blob/master/ >> leidenfrost/gui/reader_gui.py#L636 >> > (sorry for the code quality, this is a bespoked gui I wrote as part of >> my >> > PhD work, you might be the second person to ever read this code) for a >> Qt >> > object that wraps up a `Figure` in a nice-embedded way. Using this >> directly >> > you can keep a list of these objects around and show/hide them using >> > standard Qt methods. Modifying this a bit you could make this class >> based >> > on a standard Qt widget, embed them all in a main window/what have you >> and >> > then again use standard Qt methods to show/hide individual plots as you >> > wish. >> > >> > Tom >> > >> > >> > On Wed Feb 18 2015 at 12:00:27 PM tenspd137 . <dcd...@gm...> >> wrote: >> >> >> >> Sorry for digging this back up, but I can't seem to get this to work. >> >> I looked at glue as you suggested, but the page says it only supports >> >> python 2.7. As for the Qt examples I can find, all I see how to do is >> >> to feed a single plot widget different data sets - but nothing on >> >> dynamically changing the underlying widget and redrawing. Would you >> >> maybe take a look at my code and tell me what it is I am missing? If >> >> so, I'll send it to you. >> >> >> >> Much appreciated. >> >> >> >> -C >> >> >> >> On Tue, Feb 10, 2015 at 6:48 PM, tenspd137 . <dcd...@gm...> >> wrote: >> >> > No problem - thanks for the reply. I tried your suggestion of >> keeping >> >> > a widget for each plot, but I couldn't get the main window to refresh >> >> > correctly - maybe I was doing something wrong. I'll give it another >> >> > try as soon as I get a chance. In the meantime, I'll check out glue >> >> > as well - it looks pretty cool. >> >> > >> >> > I might bug you one more time if I can't figure it out, but I am not >> >> > in a hurry and I probably just overlooked something. :) >> >> > >> >> > Thanks and much appreciated! >> >> > >> >> > -C >> >> > >> >> > On Tue, Feb 10, 2015 at 2:44 PM, Thomas Caswell <tca...@gm...> >> >> > wrote: >> >> >> Sorry this didn't get a response for so long. >> >> >> >> >> >> The core of the embedding in Qt is at QWidget which contains the >> >> >> canvas. >> >> >> Anything you want to do with a QWidget you can do with the canvas. >> >> >> Independently you need to maintain the mpl level plotting objects >> (the >> >> >> Figure, Axes, and Artist objects) (well, you don't _need_ to, you >> can >> >> >> get to >> >> >> them through the canvas object, but to keep your self sane I highly >> >> >> recommend keeping track of the mpl objects your self, this linkage >> is >> >> >> there >> >> >> so that GUI generated draw commands can trigger a re-rendering of >> the >> >> >> figure). >> >> >> >> >> >> I would just have a widget for each of the plots you want to have >> and >> >> >> then >> >> >> cycle which one is visible in the main window, that is probably a >> lot >> >> >> easier >> >> >> than trying to attach and detach canvases from Figures. >> >> >> >> >> >> I would also take a look at glue >> >> >> http://www.glueviz.org/en/stable/installation.html who may have >> solved >> >> >> many >> >> >> of these problems for you. >> >> >> >> >> >> Tom >> >> >> >> >> >> On Thu Feb 05 2015 at 1:03:16 PM tenspd137 . <dcd...@gm...> >> >> >> wrote: >> >> >>> >> >> >>> Hi all, >> >> >>> >> >> >>> I often have scripts that make a lot of plots, and I would like to >> be >> >> >>> able to create the plots and then have a UI tool that shows a list >> of >> >> >>> their titles, click on the title and have the plot be drawn in a >> >> >>> window. So far, I have been able to use PyQt to create a UI with a >> >> >>> list box and a Widget to display plots. What I can't seem to >> figure >> >> >>> out is how to make a bunch of plots and then have the Window >> update. >> >> >>> >> >> >>> So, in psuedo code: >> >> >>> >> >> >>> list of plots = [] >> >> >>> >> >> >>> Go through datasets: >> >> >>> plots.append(plot(dataset)) >> >> >>> >> >> >>> For plot in plots: >> >> >>> add plot title to UI list, position in list is reference >> back >> >> >>> into list of plots >> >> >>> >> >> >>> On UI: >> >> >>> click on plot name/title >> >> >>> widget draws plot >> >> >>> >> >> >>> >> >> >>> So - basically like docked plots, except there is just a list to >> the >> >> >>> side instead (much cleaner IMHO) >> >> >>> >> >> >>> I haven't been able to find any examples from googling. Has any >> one >> >> >>> been able to do this or seen examples? >> >> >>> >> >> >>> >> >> >>> Any help or suggestions are appreciated! >> >> >>> >> >> >>> Thanks! >> >> >>> >> >> >>> : >> >> >>> >> >> >>> >> >> >>> >> >> >>> ------------------------------------------------------------ >> ------------------ >> >> >>> Dive into the World of Parallel Programming. The Go Parallel >> Website, >> >> >>> sponsored by Intel and developed in partnership with Slashdot >> Media, >> >> >>> is >> >> >>> your >> >> >>> hub for all things parallel software development, from weekly >> thought >> >> >>> leadership blogs to news, videos, case studies, tutorials and more. >> >> >>> Take a >> >> >>> look and join the conversation now. http://goparallel.sourceforge. >> net/ >> >> >>> _______________________________________________ >> >> >>> Matplotlib-users mailing list >> >> >>> Mat...@li... >> >> >>> https://lists.sourceforge.net/lists/listinfo/matplotlib-users >> >> >> ------------------------------------------------------------------------------ >> Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server >> from Actuate! Instantly Supercharge Your Business Reports and Dashboards >> with Interactivity, Sharing, Native Excel Exports, App Integration & more >> Get technology previously reserved for billion-dollar corporations, FREE >> >> http://pubads.g.doubleclick.net/gampad/clk?id=190641631&iu=/4140/ostg.clktrk > > >> _______________________________________________ >> Matplotlib-users mailing list >> Mat...@li... >> https://lists.sourceforge.net/lists/listinfo/matplotlib-users >> >>
I don't have an answer to your question exactly. But I'll just say that this does make sense. The aspect-corrected axes (after show) is a subset of what you originally asked for, i.e. the bottom is higher, and the height is smaller. My guess is that this is not calculated until the final rendering on save on some computational effort. Otherwise, these values might need to be recalculated every time you add e.g. a colorbar. There is certainly a way to "trick" the plot into rendering, but I wonder if you could post a small (maybe two axes) version that demonstrates the effect your trying to accomplish. Perhaps someone might have a simpler/more robust solution. Ryan On Wed, Feb 18, 2015 at 4:27 AM, gdm <jga...@gm...> wrote: > New matplotlib user here. Sometimes I like to make figures with multiple > axes, and have lines that cross multiple axes. I've run in to problems > with > coordinates when doing this. One such problem is that axes.get_position() > seems to return incorrect coordinates for an axes with a fixed aspect > ratio. > However, after calling pyplot.show() (or fig.savefig()), it returns the > correct coordinates. > > Here is some example code: > ######################### > import numpy > import matplotlib.pyplot as plt > > # make up some data > x = numpy.arange(10) > y = numpy.sin(x) > y2 = numpy.cos(x) > > # generate the figure > fig = plt.figure() > > # setup the first axes > ax1 = fig.add_subplot(121) > plt.plot(x,y) > > # setup the second axes with axis ratio > ax2 = fig.add_subplot(122, aspect=6) > plt.plot(x, y2) > > # Print out the axes position after various operations > print "aaa", ax2.get_position() > > plt.draw() > print "bbb", ax2.get_position() > > fig.canvas.draw() > print "ccc", ax2.get_position() > > plt.show(block=False) > print "yyy", ax2.get_position() > ########################## > > Running this code produces the following output: > aaa Bbox('array([[ 0.54772727, 0.1 ],\n [ 0.9 , 0.9 > ]])') > bbb Bbox('array([[ 0.54772727, 0.1 ],\n [ 0.9 , 0.9 > ]])') > ccc Bbox('array([[ 0.54772727, 0.1 ],\n [ 0.9 , 0.9 > ]])') > yyy Bbox('array([[ 0.54772727, 0.18686869],\n [ 0.9 , > 0.81313131]])') > > P.S.: I think this might be related to an issue noted here: > > http://stackoverflow.com/questions/11900654/get-position-does-strange-things-when-using-a-colorbar > > > > > > -- > View this message in context: > http://matplotlib.1069221.n5.nabble.com/axes-get-position-inaccurate-until-after-savefig-tp44954.html > Sent from the matplotlib - users mailing list archive at Nabble.com. > > > ------------------------------------------------------------------------------ > Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server > from Actuate! Instantly Supercharge Your Business Reports and Dashboards > with Interactivity, Sharing, Native Excel Exports, App Integration & more > Get technology previously reserved for billion-dollar corporations, FREE > > http://pubads.g.doubleclick.net/gampad/clk?id=190641631&iu=/4140/ostg.clktrk > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users >
Tom et al., I don't know about this exact application... However, a couple of months ago, I asked on the Scipy mailing list about updating the Scipy cookbook page for Qt/Matplotlib ( http://wiki.scipy.org/Cookbook/Matplotlib/Qt_with_IPython_and_Designer), but I never got a response. The cookbook example is terribly out of date, so I worked out a pretty simple example that essentially reproduces the Qt backend plotting window. See my post ( http://mail.scipy.org/pipermail/scipy-dev/2014-December/020258.html) for an initial version of the code. I may have updated it since that time. If you are asking for an example for the MPL docs, I would be happy to write my example up with some picts, if you could tell me where the most appropriate place in the documentation would be for such an addition. (However, it sounds like Creator will supersede Designer for Qt5 so...) Ryan On Wed, Feb 18, 2015 at 12:31 PM, Thomas Caswell <tca...@gm...> wrote: > A good tutorial on how to make mpl play nice with QtDesigner would be a > useful thing to have in the documentation. It would be appreciated if you > could take a crack at writing that up. > > Tom > > ---------- Forwarded message --------- > From: tenspd137 . <dcd...@gm...> > Date: Wed Feb 18 2015 at 12:25:10 PM > Subject: Re: [Matplotlib-users] Keep list of figures or plots and flip > through list using UI > To: Thomas Caswell <tca...@gm...> > > > Funny thing - shortly after I wrote you - I figured it out. I have a > GUI/Dialog I created with designer that has a push button which cycles > between two plots I stored in a list. If you would like to see my > code, I would be more than happy to share. It isn't fabulous, but it > show the mechanics. I will also take a look at what you just posted > above. > > Much appreciated! > > -C > > > > > On Wed, Feb 18, 2015 at 10:19 AM, Thomas Caswell <tca...@gm...> > wrote: > > Please ping the mailing list again (I cc'd the list on this). > > > > See > > https://github.com/tacaswell/leidenfrost/blob/master/ > leidenfrost/gui/reader_gui.py#L636 > > (sorry for the code quality, this is a bespoked gui I wrote as part of my > > PhD work, you might be the second person to ever read this code) for a Qt > > object that wraps up a `Figure` in a nice-embedded way. Using this > directly > > you can keep a list of these objects around and show/hide them using > > standard Qt methods. Modifying this a bit you could make this class > based > > on a standard Qt widget, embed them all in a main window/what have you > and > > then again use standard Qt methods to show/hide individual plots as you > > wish. > > > > Tom > > > > > > On Wed Feb 18 2015 at 12:00:27 PM tenspd137 . <dcd...@gm...> > wrote: > >> > >> Sorry for digging this back up, but I can't seem to get this to work. > >> I looked at glue as you suggested, but the page says it only supports > >> python 2.7. As for the Qt examples I can find, all I see how to do is > >> to feed a single plot widget different data sets - but nothing on > >> dynamically changing the underlying widget and redrawing. Would you > >> maybe take a look at my code and tell me what it is I am missing? If > >> so, I'll send it to you. > >> > >> Much appreciated. > >> > >> -C > >> > >> On Tue, Feb 10, 2015 at 6:48 PM, tenspd137 . <dcd...@gm...> > wrote: > >> > No problem - thanks for the reply. I tried your suggestion of keeping > >> > a widget for each plot, but I couldn't get the main window to refresh > >> > correctly - maybe I was doing something wrong. I'll give it another > >> > try as soon as I get a chance. In the meantime, I'll check out glue > >> > as well - it looks pretty cool. > >> > > >> > I might bug you one more time if I can't figure it out, but I am not > >> > in a hurry and I probably just overlooked something. :) > >> > > >> > Thanks and much appreciated! > >> > > >> > -C > >> > > >> > On Tue, Feb 10, 2015 at 2:44 PM, Thomas Caswell <tca...@gm...> > >> > wrote: > >> >> Sorry this didn't get a response for so long. > >> >> > >> >> The core of the embedding in Qt is at QWidget which contains the > >> >> canvas. > >> >> Anything you want to do with a QWidget you can do with the canvas. > >> >> Independently you need to maintain the mpl level plotting objects > (the > >> >> Figure, Axes, and Artist objects) (well, you don't _need_ to, you can > >> >> get to > >> >> them through the canvas object, but to keep your self sane I highly > >> >> recommend keeping track of the mpl objects your self, this linkage is > >> >> there > >> >> so that GUI generated draw commands can trigger a re-rendering of the > >> >> figure). > >> >> > >> >> I would just have a widget for each of the plots you want to have and > >> >> then > >> >> cycle which one is visible in the main window, that is probably a lot > >> >> easier > >> >> than trying to attach and detach canvases from Figures. > >> >> > >> >> I would also take a look at glue > >> >> http://www.glueviz.org/en/stable/installation.html who may have > solved > >> >> many > >> >> of these problems for you. > >> >> > >> >> Tom > >> >> > >> >> On Thu Feb 05 2015 at 1:03:16 PM tenspd137 . <dcd...@gm...> > >> >> wrote: > >> >>> > >> >>> Hi all, > >> >>> > >> >>> I often have scripts that make a lot of plots, and I would like to > be > >> >>> able to create the plots and then have a UI tool that shows a list > of > >> >>> their titles, click on the title and have the plot be drawn in a > >> >>> window. So far, I have been able to use PyQt to create a UI with a > >> >>> list box and a Widget to display plots. What I can't seem to figure > >> >>> out is how to make a bunch of plots and then have the Window update. > >> >>> > >> >>> So, in psuedo code: > >> >>> > >> >>> list of plots = [] > >> >>> > >> >>> Go through datasets: > >> >>> plots.append(plot(dataset)) > >> >>> > >> >>> For plot in plots: > >> >>> add plot title to UI list, position in list is reference back > >> >>> into list of plots > >> >>> > >> >>> On UI: > >> >>> click on plot name/title > >> >>> widget draws plot > >> >>> > >> >>> > >> >>> So - basically like docked plots, except there is just a list to the > >> >>> side instead (much cleaner IMHO) > >> >>> > >> >>> I haven't been able to find any examples from googling. Has any one > >> >>> been able to do this or seen examples? > >> >>> > >> >>> > >> >>> Any help or suggestions are appreciated! > >> >>> > >> >>> Thanks! > >> >>> > >> >>> : > >> >>> > >> >>> > >> >>> > >> >>> ------------------------------------------------------------ > ------------------ > >> >>> Dive into the World of Parallel Programming. The Go Parallel > Website, > >> >>> sponsored by Intel and developed in partnership with Slashdot Media, > >> >>> is > >> >>> your > >> >>> hub for all things parallel software development, from weekly > thought > >> >>> leadership blogs to news, videos, case studies, tutorials and more. > >> >>> Take a > >> >>> look and join the conversation now. http://goparallel.sourceforge. > net/ > >> >>> _______________________________________________ > >> >>> Matplotlib-users mailing list > >> >>> Mat...@li... > >> >>> https://lists.sourceforge.net/lists/listinfo/matplotlib-users > > > ------------------------------------------------------------------------------ > Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server > from Actuate! Instantly Supercharge Your Business Reports and Dashboards > with Interactivity, Sharing, Native Excel Exports, App Integration & more > Get technology previously reserved for billion-dollar corporations, FREE > > http://pubads.g.doubleclick.net/gampad/clk?id=190641631&iu=/4140/ostg.clktrk > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > >
A good tutorial on how to make mpl play nice with QtDesigner would be a useful thing to have in the documentation. It would be appreciated if you could take a crack at writing that up. Tom ---------- Forwarded message --------- From: tenspd137 . <dcd...@gm...> Date: Wed Feb 18 2015 at 12:25:10 PM Subject: Re: [Matplotlib-users] Keep list of figures or plots and flip through list using UI To: Thomas Caswell <tca...@gm...> Funny thing - shortly after I wrote you - I figured it out. I have a GUI/Dialog I created with designer that has a push button which cycles between two plots I stored in a list. If you would like to see my code, I would be more than happy to share. It isn't fabulous, but it show the mechanics. I will also take a look at what you just posted above. Much appreciated! -C On Wed, Feb 18, 2015 at 10:19 AM, Thomas Caswell <tca...@gm...> wrote: > Please ping the mailing list again (I cc'd the list on this). > > See > https://github.com/tacaswell/leidenfrost/blob/master/ leidenfrost/gui/reader_gui.py#L636 > (sorry for the code quality, this is a bespoked gui I wrote as part of my > PhD work, you might be the second person to ever read this code) for a Qt > object that wraps up a `Figure` in a nice-embedded way. Using this directly > you can keep a list of these objects around and show/hide them using > standard Qt methods. Modifying this a bit you could make this class based > on a standard Qt widget, embed them all in a main window/what have you and > then again use standard Qt methods to show/hide individual plots as you > wish. > > Tom > > > On Wed Feb 18 2015 at 12:00:27 PM tenspd137 . <dcd...@gm...> wrote: >> >> Sorry for digging this back up, but I can't seem to get this to work. >> I looked at glue as you suggested, but the page says it only supports >> python 2.7. As for the Qt examples I can find, all I see how to do is >> to feed a single plot widget different data sets - but nothing on >> dynamically changing the underlying widget and redrawing. Would you >> maybe take a look at my code and tell me what it is I am missing? If >> so, I'll send it to you. >> >> Much appreciated. >> >> -C >> >> On Tue, Feb 10, 2015 at 6:48 PM, tenspd137 . <dcd...@gm...> wrote: >> > No problem - thanks for the reply. I tried your suggestion of keeping >> > a widget for each plot, but I couldn't get the main window to refresh >> > correctly - maybe I was doing something wrong. I'll give it another >> > try as soon as I get a chance. In the meantime, I'll check out glue >> > as well - it looks pretty cool. >> > >> > I might bug you one more time if I can't figure it out, but I am not >> > in a hurry and I probably just overlooked something. :) >> > >> > Thanks and much appreciated! >> > >> > -C >> > >> > On Tue, Feb 10, 2015 at 2:44 PM, Thomas Caswell <tca...@gm...> >> > wrote: >> >> Sorry this didn't get a response for so long. >> >> >> >> The core of the embedding in Qt is at QWidget which contains the >> >> canvas. >> >> Anything you want to do with a QWidget you can do with the canvas. >> >> Independently you need to maintain the mpl level plotting objects (the >> >> Figure, Axes, and Artist objects) (well, you don't _need_ to, you can >> >> get to >> >> them through the canvas object, but to keep your self sane I highly >> >> recommend keeping track of the mpl objects your self, this linkage is >> >> there >> >> so that GUI generated draw commands can trigger a re-rendering of the >> >> figure). >> >> >> >> I would just have a widget for each of the plots you want to have and >> >> then >> >> cycle which one is visible in the main window, that is probably a lot >> >> easier >> >> than trying to attach and detach canvases from Figures. >> >> >> >> I would also take a look at glue >> >> http://www.glueviz.org/en/stable/installation.html who may have solved >> >> many >> >> of these problems for you. >> >> >> >> Tom >> >> >> >> On Thu Feb 05 2015 at 1:03:16 PM tenspd137 . <dcd...@gm...> >> >> wrote: >> >>> >> >>> Hi all, >> >>> >> >>> I often have scripts that make a lot of plots, and I would like to be >> >>> able to create the plots and then have a UI tool that shows a list of >> >>> their titles, click on the title and have the plot be drawn in a >> >>> window. So far, I have been able to use PyQt to create a UI with a >> >>> list box and a Widget to display plots. What I can't seem to figure >> >>> out is how to make a bunch of plots and then have the Window update. >> >>> >> >>> So, in psuedo code: >> >>> >> >>> list of plots = [] >> >>> >> >>> Go through datasets: >> >>> plots.append(plot(dataset)) >> >>> >> >>> For plot in plots: >> >>> add plot title to UI list, position in list is reference back >> >>> into list of plots >> >>> >> >>> On UI: >> >>> click on plot name/title >> >>> widget draws plot >> >>> >> >>> >> >>> So - basically like docked plots, except there is just a list to the >> >>> side instead (much cleaner IMHO) >> >>> >> >>> I haven't been able to find any examples from googling. Has any one >> >>> been able to do this or seen examples? >> >>> >> >>> >> >>> Any help or suggestions are appreciated! >> >>> >> >>> Thanks! >> >>> >> >>> : >> >>> >> >>> >> >>> >> >>> ------------------------------------------------------------ ------------------ >> >>> Dive into the World of Parallel Programming. The Go Parallel Website, >> >>> sponsored by Intel and developed in partnership with Slashdot Media, >> >>> is >> >>> your >> >>> hub for all things parallel software development, from weekly thought >> >>> leadership blogs to news, videos, case studies, tutorials and more. >> >>> Take a >> >>> look and join the conversation now. http://goparallel.sourceforge. net/ >> >>> _______________________________________________ >> >>> Matplotlib-users mailing list >> >>> Mat...@li... >> >>> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Emilia, There is not a 'whats new' for 1.4.3 as it is a bug fix release and should not have new features ;) The new features in nbagg are all related to improved handling of gui events, in particular keyboard and scroll wheel events. The best way to get a feel for what nbagg can do is to read through the UAT notebook. https://raw.githubusercontent.com/matplotlib/matplotlib/master/lib/matplotlib/backends/web_backend/nbagg_uat.ipynb Tom On Wed Feb 18 2015 at 11:45:57 AM Emilia Petrisor <emi...@gm...> wrote: > Hi all, > > I looked for a link where I could find out what’s new in matplotlib 1.4.3, > but there is no one. > > Especially I’m interested in the new features of nbagg backend. All I > know is what I read in an email here, namely that *The nbagg backend is > looking great - some pretty swish new features*. > Thanks, > > Emilia > > ------------------------------------------------------------ > ------------------ > Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server > from Actuate! Instantly Supercharge Your Business Reports and Dashboards > with Interactivity, Sharing, Native Excel Exports, App Integration & more > Get technology previously reserved for billion-dollar corporations, FREE > http://pubads.g.doubleclick.net/gampad/clk?id=190641631&iu=/ > 4140/ostg.clktrk_______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users >
Please ping the mailing list again (I cc'd the list on this). See https://github.com/tacaswell/leidenfrost/blob/master/leidenfrost/gui/reader_gui.py#L636 (sorry for the code quality, this is a bespoked gui I wrote as part of my PhD work, you might be the second person to ever read this code) for a Qt object that wraps up a `Figure` in a nice-embedded way. Using this directly you can keep a list of these objects around and show/hide them using standard Qt methods. Modifying this a bit you could make this class based on a standard Qt widget, embed them all in a main window/what have you and then again use standard Qt methods to show/hide individual plots as you wish. Tom On Wed Feb 18 2015 at 12:00:27 PM tenspd137 . <dcd...@gm...> wrote: > Sorry for digging this back up, but I can't seem to get this to work. > I looked at glue as you suggested, but the page says it only supports > python 2.7. As for the Qt examples I can find, all I see how to do is > to feed a single plot widget different data sets - but nothing on > dynamically changing the underlying widget and redrawing. Would you > maybe take a look at my code and tell me what it is I am missing? If > so, I'll send it to you. > > Much appreciated. > > -C > > On Tue, Feb 10, 2015 at 6:48 PM, tenspd137 . <dcd...@gm...> wrote: > > No problem - thanks for the reply. I tried your suggestion of keeping > > a widget for each plot, but I couldn't get the main window to refresh > > correctly - maybe I was doing something wrong. I'll give it another > > try as soon as I get a chance. In the meantime, I'll check out glue > > as well - it looks pretty cool. > > > > I might bug you one more time if I can't figure it out, but I am not > > in a hurry and I probably just overlooked something. :) > > > > Thanks and much appreciated! > > > > -C > > > > On Tue, Feb 10, 2015 at 2:44 PM, Thomas Caswell <tca...@gm...> > wrote: > >> Sorry this didn't get a response for so long. > >> > >> The core of the embedding in Qt is at QWidget which contains the canvas. > >> Anything you want to do with a QWidget you can do with the canvas. > >> Independently you need to maintain the mpl level plotting objects (the > >> Figure, Axes, and Artist objects) (well, you don't _need_ to, you can > get to > >> them through the canvas object, but to keep your self sane I highly > >> recommend keeping track of the mpl objects your self, this linkage is > there > >> so that GUI generated draw commands can trigger a re-rendering of the > >> figure). > >> > >> I would just have a widget for each of the plots you want to have and > then > >> cycle which one is visible in the main window, that is probably a lot > easier > >> than trying to attach and detach canvases from Figures. > >> > >> I would also take a look at glue > >> http://www.glueviz.org/en/stable/installation.html who may have solved > many > >> of these problems for you. > >> > >> Tom > >> > >> On Thu Feb 05 2015 at 1:03:16 PM tenspd137 . <dcd...@gm...> > wrote: > >>> > >>> Hi all, > >>> > >>> I often have scripts that make a lot of plots, and I would like to be > >>> able to create the plots and then have a UI tool that shows a list of > >>> their titles, click on the title and have the plot be drawn in a > >>> window. So far, I have been able to use PyQt to create a UI with a > >>> list box and a Widget to display plots. What I can't seem to figure > >>> out is how to make a bunch of plots and then have the Window update. > >>> > >>> So, in psuedo code: > >>> > >>> list of plots = [] > >>> > >>> Go through datasets: > >>> plots.append(plot(dataset)) > >>> > >>> For plot in plots: > >>> add plot title to UI list, position in list is reference back > >>> into list of plots > >>> > >>> On UI: > >>> click on plot name/title > >>> widget draws plot > >>> > >>> > >>> So - basically like docked plots, except there is just a list to the > >>> side instead (much cleaner IMHO) > >>> > >>> I haven't been able to find any examples from googling. Has any one > >>> been able to do this or seen examples? > >>> > >>> > >>> Any help or suggestions are appreciated! > >>> > >>> Thanks! > >>> > >>> : > >>> > >>> > >>> ------------------------------------------------------------ > ------------------ > >>> Dive into the World of Parallel Programming. The Go Parallel Website, > >>> sponsored by Intel and developed in partnership with Slashdot Media, is > >>> your > >>> hub for all things parallel software development, from weekly thought > >>> leadership blogs to news, videos, case studies, tutorials and more. > Take a > >>> look and join the conversation now. http://goparallel.sourceforge.net/ > >>> _______________________________________________ > >>> Matplotlib-users mailing list > >>> Mat...@li... > >>> https://lists.sourceforge.net/lists/listinfo/matplotlib-users >
Hi all, I looked for a link where I could find out what’s new in matplotlib 1.4.3, but there is no one. Especially I’m interested in the new features of nbagg backend. All I know is what I read in an email here, namely that *The nbagg backend is looking great - some pretty swish new features*. Thanks, Emilia
New matplotlib user here. Sometimes I like to make figures with multiple axes, and have lines that cross multiple axes. I've run in to problems with coordinates when doing this. One such problem is that axes.get_position() seems to return incorrect coordinates for an axes with a fixed aspect ratio. However, after calling pyplot.show() (or fig.savefig()), it returns the correct coordinates. Here is some example code: ######################### import numpy import matplotlib.pyplot as plt # make up some data x = numpy.arange(10) y = numpy.sin(x) y2 = numpy.cos(x) # generate the figure fig = plt.figure() # setup the first axes ax1 = fig.add_subplot(121) plt.plot(x,y) # setup the second axes with axis ratio ax2 = fig.add_subplot(122, aspect=6) plt.plot(x, y2) # Print out the axes position after various operations print "aaa", ax2.get_position() plt.draw() print "bbb", ax2.get_position() fig.canvas.draw() print "ccc", ax2.get_position() plt.show(block=False) print "yyy", ax2.get_position() ########################## Running this code produces the following output: aaa Bbox('array([[ 0.54772727, 0.1 ],\n [ 0.9 , 0.9 ]])') bbb Bbox('array([[ 0.54772727, 0.1 ],\n [ 0.9 , 0.9 ]])') ccc Bbox('array([[ 0.54772727, 0.1 ],\n [ 0.9 , 0.9 ]])') yyy Bbox('array([[ 0.54772727, 0.18686869],\n [ 0.9 , 0.81313131]])') P.S.: I think this might be related to an issue noted here: http://stackoverflow.com/questions/11900654/get-position-does-strange-things-when-using-a-colorbar -- View this message in context: http://matplotlib.1069221.n5.nabble.com/axes-get-position-inaccurate-until-after-savefig-tp44954.html Sent from the matplotlib - users mailing list archive at Nabble.com.