Re: [Matplotlib-users] feature discussion/request: a 'layout' command for matplotlib

2010-01-10 Thread Andrew Straw
per freem wrote:
> hi all,
>
> i am a *huge fan* of matplotlib and use it for all plotting. one
> feature that i would find extremely useful that i believe is missing
> (but am very open to being corrected in case i overlooked something)
> is a way to define the layout of complex subplots. by this i mean
> something like R's "layout" command, which allows you to nearly
> arbitrarily arrange the subplots of a figure. this command is much
> more general than "subplot" since it does not restrict you to square
> arrangements of figure subplots.
>
> for examples, check out these figures/examples:
>
> 1. source code of complex layout:
> http://rgraphics.limnology.wisc.edu/rmargins_layout.php
> (the associated graph it produces is here:
> http://rgraphics.limnology.wisc.edu/images/layouts/rmargins_layout_thumb.png)
>
> 2. a tutorial on complex layouts with this command:
> http://www.statmethods.net/advgraphs/layout.html
> in particular, see:
> http://www.statmethods.net/advgraphs/images/layout3a.png where a
> complex layout which is currently not possible with "subplot" is made.
>
> a command like R's layout would be a tremendously helpful addition to
> matplotlib, in my opinion. it will prevent the need for annoying
> manual "postprocessing" of figures into these layouts using tools like
> Illustrator, since these figures could be generated programmatically
> instead, which much more precision.
>
> as far as i know, this cannot be done in matplotlib right now, without
> plotting your own axes (using some combination of axes grid toolkit
> and raw axes plotting.)
>
> if anyone out there has written some kind of wrappers that do
> something like the "layout" command, i would love to know about it. if
> it's still in testing and not part of the current matplotlib, i'd be
> more than happy to beta test this for anyone and try it on many
> examples.
>   
Hi Per,

I wrote two things that may be of interest to you.

This first is mplsizer, based on the wx layout model, and works "live"
(with a figure open in a GUI) as well as for saving to disk. See the
demo directory for, well, some demos. I haven't been using this too much
lately, but it still works as well as it ever did AFAIK. There is a
trivial bit of documentation and a copy of the source at
http://github.com/astraw/mplsizer

The second is svg_stack. This is used as a post-processing step that
requires saving my figures as svg files and then composing them with
this tool. There is some minimal documentation and the source at
http://github.com/astraw/svg_stack . The nice thing with svg_stack is
that you can use svg files from other sources (i.e. not just
matplotlib). Also, everything can be manually adjusted in Inkscape,
which itself has nice command-line export to .png and .pdf capabilities.

-Andrew

--
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev 
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] feature discussion/request: a 'layout' command for matplotlib

2010-01-10 Thread Gael Varoquaux
On Sun, Jan 10, 2010 at 07:32:27AM -0800, Andrew Straw wrote:
> This first is mplsizer, based on the wx layout model, and works "live"
> (with a figure open in a GUI) as well as for saving to disk. See the
> demo directory for, well, some demos. I haven't been using this too much
> lately, but it still works as well as it ever did AFAIK. There is a
> trivial bit of documentation and a copy of the source at
> http://github.com/astraw/mplsizer

Any interest in merging this in as an mpl_toolkit?

Gaël

--
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev 
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] feature discussion/request: a 'layout' command for matplotlib

2010-01-10 Thread Andrew Straw
Gael Varoquaux wrote:
> On Sun, Jan 10, 2010 at 07:32:27AM -0800, Andrew Straw wrote:
>   
>> This first is mplsizer, based on the wx layout model, and works "live"
>> (with a figure open in a GUI) as well as for saving to disk. See the
>> demo directory for, well, some demos. I haven't been using this too much
>> lately, but it still works as well as it ever did AFAIK. There is a
>> trivial bit of documentation and a copy of the source at
>> http://github.com/astraw/mplsizer
>> 
>
> Any interest in merging this in as an mpl_toolkit?
>
>   
It already is. :) Any interest in writing docs and advertising it?

--
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev 
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] feature discussion/request: a 'layout' command for matplotlib

2010-01-10 Thread Gael Varoquaux
On Sun, Jan 10, 2010 at 07:54:18AM -0800, Andrew Straw wrote:
> > Any interest in merging this in as an mpl_toolkit?


> It already is. :)

Me dig hole and hide.

> Any interest in writing docs and advertising it?

Well, first I'll use it :). I can advertise if I and up using it a lot.

Gaël

--
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev 
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] Bug in demo_parasite_axes2 example?

2010-01-10 Thread Burly Cumberland
Hi,
 
0.99 I've just re-tested with 0.99.1 and found it works fine.. 

b.

On 8 Jan 2010, at 18:34, Jae-Joon Lee wrote:

> What version of matplotlib are you using?
> This may be the bug that already have been fixed.
> Neither with the maintenance branch nor the current svn reproduce this 
> problem,
> as can be easily seen from the gallery
> 
> http://matplotlib.sourceforge.net/examples/axes_grid/demo_parasite_axes2.html
> 
> -JJ
> 
> 
> On Thu, Jan 7, 2010 at 5:16 AM, Burly Cumberland  wrote:
>> Hi,
>> 
>> I've been playing around with the parasite_axes toolkit. It's very nice but
>> I discovered from the example that I always get an extra set of x and y axis
>> labels. See attached png. I've got around this by simply turning the first
>> axis off. Is this a bug in the code or the example? Also there appears to be
>> an additional set of axis label commands in the example.
>> 
>> From demo_parasite_axes2.py
>> --
>> 
>> from mpl_toolkits.axes_grid.parasite_axes import SubplotHost
>> import matplotlib.pyplot as plt
>> 
>> if 1:
>>fig = plt.figure(1)
>>plt.axis('off') # Extra line to remove unwanted axis labels
>>host = SubplotHost(fig, 111)
>> 
>>host.set_ylabel("Density")
>>host.set_xlabel("Distance")
>> 
>>par1 = host.twinx()
>>par2 = host.twinx()
>> 
>>par1.set_ylabel("Temperature")
>> 
>>par2.axis["right"].set_visible(False)
>> 
>>offset = 60, 0
>>new_axisline = par2.get_grid_helper().new_fixed_axis
>>par2.axis["right2"] = new_axisline(loc="right",
>>   axes=par2,
>>   offset=offset)
>> 
>>par2.axis["right2"].label.set_visible(True)
>>par2.axis["right2"].set_label("Velocity")
>> 
>>fig.add_axes(host)
>>plt.subplots_adjust(right=0.75)
>> 
>>host.set_xlim(0, 2)
>>host.set_ylim(0, 2)
>> 
>>host.set_xlabel("Distance") # Why reset these three labels..
>>host.set_ylabel("Density")
>>par1.set_ylabel("Temperature")
>> 
>>p1, = host.plot([0, 1, 2], [0, 1, 2], label="Density")
>>p2, = par1.plot([0, 1, 2], [0, 3, 2], label="Temperature")
>>p3, = par2.plot([0, 1, 2], [50, 30, 15], label="Velocity")
>> 
>>par1.set_ylim(0, 4)
>>par2.set_ylim(1, 65)
>> 
>>host.legend()
>> 
>>host.axis["left"].label.set_color(p1.get_color())
>>par1.axis["right"].label.set_color(p2.get_color())
>>par2.axis["right2"].label.set_color(p3.get_color())
>> 
>>plt.draw()
>>plt.show()
>> 
>> --
>> This SF.Net email is sponsored by the Verizon Developer Community
>> Take advantage of Verizon's best-in-class app development support
>> A streamlined, 14 day to market process makes app distribution fast and easy
>> Join now and get one step closer to millions of Verizon customers
>> http://p.sf.net/sfu/verizon-dev2dev
>> ___
>> Matplotlib-users mailing list
>> Matplotlib-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
>> 
>> 


--
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev 
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


[Matplotlib-users] Simple text style question

2010-01-10 Thread Gökhan Sever
Hello,

Is there a way to color words differently in a label or title, for example:

ylabel("measurement 1 (in red color)" , "measurement 2 (in blue color)") to
match with the plotted line colors?

Thanks.

-- 
Gökhan
--
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev ___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users