SourceForge logo
SourceForge logo
Menu

matplotlib-devel — matplotlib developers

You can subscribe to this list here.

2003 Jan
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
(1)
Nov
(33)
Dec
(20)
2004 Jan
(7)
Feb
(44)
Mar
(51)
Apr
(43)
May
(43)
Jun
(36)
Jul
(61)
Aug
(44)
Sep
(25)
Oct
(82)
Nov
(97)
Dec
(47)
2005 Jan
(77)
Feb
(143)
Mar
(42)
Apr
(31)
May
(93)
Jun
(93)
Jul
(35)
Aug
(78)
Sep
(56)
Oct
(44)
Nov
(72)
Dec
(75)
2006 Jan
(116)
Feb
(99)
Mar
(181)
Apr
(171)
May
(112)
Jun
(86)
Jul
(91)
Aug
(111)
Sep
(77)
Oct
(72)
Nov
(57)
Dec
(51)
2007 Jan
(64)
Feb
(116)
Mar
(70)
Apr
(74)
May
(53)
Jun
(40)
Jul
(519)
Aug
(151)
Sep
(132)
Oct
(74)
Nov
(282)
Dec
(190)
2008 Jan
(141)
Feb
(67)
Mar
(69)
Apr
(96)
May
(227)
Jun
(404)
Jul
(399)
Aug
(96)
Sep
(120)
Oct
(205)
Nov
(126)
Dec
(261)
2009 Jan
(136)
Feb
(136)
Mar
(119)
Apr
(124)
May
(155)
Jun
(98)
Jul
(136)
Aug
(292)
Sep
(174)
Oct
(126)
Nov
(126)
Dec
(79)
2010 Jan
(109)
Feb
(83)
Mar
(139)
Apr
(91)
May
(79)
Jun
(164)
Jul
(184)
Aug
(146)
Sep
(163)
Oct
(128)
Nov
(70)
Dec
(73)
2011 Jan
(235)
Feb
(165)
Mar
(147)
Apr
(86)
May
(74)
Jun
(118)
Jul
(65)
Aug
(75)
Sep
(162)
Oct
(94)
Nov
(48)
Dec
(44)
2012 Jan
(49)
Feb
(40)
Mar
(88)
Apr
(35)
May
(52)
Jun
(69)
Jul
(90)
Aug
(123)
Sep
(112)
Oct
(120)
Nov
(105)
Dec
(116)
2013 Jan
(76)
Feb
(26)
Mar
(78)
Apr
(43)
May
(61)
Jun
(53)
Jul
(147)
Aug
(85)
Sep
(83)
Oct
(122)
Nov
(18)
Dec
(27)
2014 Jan
(58)
Feb
(25)
Mar
(49)
Apr
(17)
May
(29)
Jun
(39)
Jul
(53)
Aug
(52)
Sep
(35)
Oct
(47)
Nov
(110)
Dec
(27)
2015 Jan
(50)
Feb
(93)
Mar
(96)
Apr
(30)
May
(55)
Jun
(83)
Jul
(44)
Aug
(8)
Sep
(5)
Oct
Nov
(1)
Dec
(1)
2016 Jan
Feb
Mar
(1)
Apr
May
Jun
(2)
Jul
Aug
(3)
Sep
(1)
Oct
(3)
Nov
Dec
2017 Jan
Feb
(5)
Mar
Apr
May
Jun
Jul
(3)
Aug
Sep
(7)
Oct
Nov
Dec
2018 Jan
Feb
Mar
Apr
May
Jun
Jul
(2)
Aug
Sep
Oct
Nov
Dec
S M T W T F S





1
(2)
2
(12)
3
(17)
4
(10)
5
6
7
(2)
8
(3)
9
(1)
10
(1)
11
(5)
12
(6)
13
(4)
14
15
(2)
16
(4)
17
18
(3)
19
20
(3)
21
(1)
22
(1)
23
24
(2)
25
(14)
26
(2)
27
(3)
28
(9)
29
30
(2)
31






Showing 3 results of 3

From: Nico S. <nic...@gm...> - 2010年01月08日 23:41:34
> That sounds more feasible -- however, keep in mind that anything without a
> public interface (a get_* method) is free to change in a future version of
> matplotlib. I suspect (though haven't thought it all the way through) that
> you may be required to dig into private members to get everything you need.
That may be possible, particularly I suppose for the actual plot data
(x, y(, z) values). I'm going to have to look into what
matplotlib.get* can offer me. Is there a list with all the methods
available?
> I also suspect that this will be a lot of work to support all of the kinds
> of plots that matplotlib supports, and problems are likely to arise when the
> semantics of Pgfplot and/or TikZ don't mesh well. For example, does Pgf
> plot support the same set of nonlinear transformations as matplotlib?
matplotlib and Pgfplots certainly have a different feature set, but
for a couple of common simple plots (e.g., 2D x, y data, log-scaled
axes, lines, markers, and so forth) it should be possible to write a
very basic extendible translator.
> Other people have suggested TikZ support in the past, and I, personally,
> haven't been very convinced of the usefulness of such a thing.
Well, yeah, I guess it is possible to export PDF files in such a way
that it looks sort of nice if you watch out what you do with the font
sizes, and font family in general. Over the years I've become somewhat
tired of that whole tinkering with the fonts, and eventually I'd be
about 80% happy with the result I got. If you don't want to do that
every time, and you want 100%, TikZ/Pgfplots can come in quite handy;
especially if a simple module can be written rather quickly. If you
have a simple 2D plot and you would like to get it cleanly into your
LaTeX file, why not use TikZ if it's available?
Cheers,
Nico
From: Michael D. <md...@st...> - 2010年01月08日 21:04:05
Nico Schlömer wrote:
> Hi,
>
> I'm looking into replacing my MATLAB(R) plotting routines by something
> slicker, and quite naturally found matplotlib. It has all the
> capabilities that I would need, except that I can't yet transform my
> plots into TikZ.
> For MATLAB(R), I used this rather elaborate script
> <http://win.ua.ac.be/~nschloe/content/matlab2tikz>.
>
> Well, I thought I can just go ahead and start writing and equivalent
> backend; the documentation is really nice and clear (quite unlike
> MATLAB's!) so it was no big problem to get into the concepts of the
> backend. I played around a little and thought about how I could
> implement this and that, and some questions arose which can maybe best
> answered here.
>
> For the sake of clarity, let me just give a snippet of Pgfplots (TikZ)
> code that I would like the backend to produce
>
> ===================== *snip* =====================
> [...]
> \begin{semilogyaxis}
> [axis on top,
> xtick={2,4,6,8,10,12,14,16},
> ytick={1e-15,1e-10,1e-05,1,100000},
> xmin=0.000000e+00,xmax=1.700000e+01,
> ymin=1.000000e-15,ymax=1.000000e+05,
> xmajorgrids,
> ymajorgrids,
> title={$\norm{F(\psi)}_2$},
> xlabel={$k$},
> width=\figurewidth,
> height=\figureheight,
> scale only axis
> ]
> % Line plot
> \addplot [color=red,only marks,mark=*,mark options={solid,fill=red}]
> coordinates{
> (1.000000e+00,3.206000e+01) (2.000000e+00,3.860000e+01)
> (3.000000e+00,1.421000e+03) (4.000000e+00,4.143000e+02)
> (5.000000e+00,1.445000e+02) (6.000000e+00,3.775000e+01)
> (7.000000e+00,7.455000e+00) (8.000000e+00,7.228000e-01)
> (9.000000e+00,2.275000e-02) (1.000000e+01,4.953000e-05)
> (1.100000e+01,9.718000e-10) (1.200000e+01,5.534000e-07)
> (1.300000e+01,4.217000e-11) (1.400000e+01,3.930000e-03)
> (1.500000e+01,2.067000e-07) (1.600000e+01,7.231000e-12)
> };
> \end{semilogyaxis}
> [...]
> ===================== *snap* =====================
>
> This yields a purely marker plot (without lines) on a coordinate
> system where the y-coordinate is log-scaled. You see that the code is
> rather semantic and can easily be edited (which is think is the whole
> point of Pgfplots as opposed to pure TikZ).
>
> Now, if for a matplotlib plot I had query functions for the the axes
> ranges, ticks, grids, titles, data values, and so on and so forth, it
> would be a more or less complicated parsing of those and creating what
> we see above.
>
> However, it seems to me that the concept of backends is different.
> draw_path() would be called to plot the graph itself, the coordinate
> axes, and basically everything that resembles a line, giving its
> outline (color, shape, markers, start and end points) but *no*
> semantic information, that is, whether the path is part of an axis, an
> arrow or whatever.
> Is that correct?
> 
Yes -- the backend interface is designed for "dumber" output formats 
that don't know anything about the semantics of plots -- PDF, PS, SVG 
etc. are basically "draw a line here, put some text there" sorts of 
things. Of course, you could probably write a TikZ backend without much 
semantic detail fairly easily.
> Considering this, what do matplotlob masterbrains :) think would be a
> good way to extract Pgfplots code out of a matplotlib figure? Is a
> backend feasible at all? Would a function as "matplotlib2tikz(
> myFigure )" be more advisable, making use of all sorts of query
> functions? (Such as myFigure.axes.get_xlim() -- Does something like
> that exist at all?)
> 
That sounds more feasible -- however, keep in mind that anything without 
a public interface (a get_* method) is free to change in a future 
version of matplotlib. I suspect (though haven't thought it all the way 
through) that you may be required to dig into private members to get 
everything you need. I also suspect that this will be a lot of work to 
support all of the kinds of plots that matplotlib supports, and problems 
are likely to arise when the semantics of Pgfplot and/or TikZ don't mesh 
well. For example, does Pgf plot support the same set of nonlinear 
transformations as matplotlib?
Other people have suggested TikZ support in the past, and I, personally, 
haven't been very convinced of the usefulness of such a thing. It's 
just as easy to include a PDF or EPS in LaTeX, and the mathtext and/or 
usetex functionality goes a long way to making the plots blend in nicely 
-- though it does take some care to control the size of the plots to 
make the font sizes match, it's by no means impossible. Jae-Joon's work 
with fancy arrow styles brings in a lot of the finesse features of TikZ 
to matplotlib. What do you see as the use cases for a TikZ backend?
Mike
-- 
Michael Droettboom
Science Software Branch
Operations and Engineering Division
Space Telescope Science Institute
Operated by AURA for NASA
From: Nico S. <nic...@gm...> - 2010年01月08日 20:47:58
Hi,
I'm looking into replacing my MATLAB(R) plotting routines by something
slicker, and quite naturally found matplotlib. It has all the
capabilities that I would need, except that I can't yet transform my
plots into TikZ.
For MATLAB(R), I used this rather elaborate script
<http://win.ua.ac.be/~nschloe/content/matlab2tikz>.
Well, I thought I can just go ahead and start writing and equivalent
backend; the documentation is really nice and clear (quite unlike
MATLAB's!) so it was no big problem to get into the concepts of the
backend. I played around a little and thought about how I could
implement this and that, and some questions arose which can maybe best
answered here.
For the sake of clarity, let me just give a snippet of Pgfplots (TikZ)
code that I would like the backend to produce
===================== *snip* =====================
[...]
\begin{semilogyaxis}
[axis on top,
xtick={2,4,6,8,10,12,14,16},
ytick={1e-15,1e-10,1e-05,1,100000},
xmin=0.000000e+00,xmax=1.700000e+01,
ymin=1.000000e-15,ymax=1.000000e+05,
xmajorgrids,
ymajorgrids,
title={$\norm{F(\psi)}_2$},
xlabel={$k$},
width=\figurewidth,
height=\figureheight,
scale only axis
]
% Line plot
\addplot [color=red,only marks,mark=*,mark options={solid,fill=red}]
coordinates{
 (1.000000e+00,3.206000e+01) (2.000000e+00,3.860000e+01)
(3.000000e+00,1.421000e+03) (4.000000e+00,4.143000e+02)
(5.000000e+00,1.445000e+02) (6.000000e+00,3.775000e+01)
(7.000000e+00,7.455000e+00) (8.000000e+00,7.228000e-01)
(9.000000e+00,2.275000e-02) (1.000000e+01,4.953000e-05)
(1.100000e+01,9.718000e-10) (1.200000e+01,5.534000e-07)
(1.300000e+01,4.217000e-11) (1.400000e+01,3.930000e-03)
(1.500000e+01,2.067000e-07) (1.600000e+01,7.231000e-12)
};
\end{semilogyaxis}
[...]
===================== *snap* =====================
This yields a purely marker plot (without lines) on a coordinate
system where the y-coordinate is log-scaled. You see that the code is
rather semantic and can easily be edited (which is think is the whole
point of Pgfplots as opposed to pure TikZ).
Now, if for a matplotlib plot I had query functions for the the axes
ranges, ticks, grids, titles, data values, and so on and so forth, it
would be a more or less complicated parsing of those and creating what
we see above.
However, it seems to me that the concept of backends is different.
draw_path() would be called to plot the graph itself, the coordinate
axes, and basically everything that resembles a line, giving its
outline (color, shape, markers, start and end points) but *no*
semantic information, that is, whether the path is part of an axis, an
arrow or whatever.
Is that correct?
Considering this, what do matplotlob masterbrains :) think would be a
good way to extract Pgfplots code out of a matplotlib figure? Is a
backend feasible at all? Would a function as "matplotlib2tikz(
myFigure )" be more advisable, making use of all sorts of query
functions? (Such as myFigure.axes.get_xlim() -- Does something like
that exist at all?)
Cheers,
Nico

Showing 3 results of 3

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.
Thanks for helping keep SourceForge clean.
X





Briefly describe the problem (required):
Upload screenshot of ad (required):
Select a file, or drag & drop file here.
Screenshot instructions:

Click URL instructions:
Right-click on the ad, choose "Copy Link", then paste here →
(This may not be possible with some types of ads)

More information about our ad policies

Ad destination/click URL:

AltStyle によって変換されたページ (->オリジナル) /