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
|
|
From: Julien H. <jul...@gm...> - 2014-11-01 20:30:28
|
Many Thanks for your support.
It is Python 3.3.5 and matplotlib 1.4.0
I've also found that it worked with ByteIO(), but then I was stuck by the
encode/decode things. Thanks very much !
The traceback is below:
Traceback (most recent call last):
File "<ipython-input-1-e8a4a3fa67f4>", line 1, in <module>
runfile('/home/hash/example.py', wdir='/home/hash')
File
"/usr/lib/python3.3/site-packages/spyderlib/widgets/externalshell/sitecustomize.py",
line 586, in runfile
execfile(filename, namespace)
File
"/usr/lib/python3.3/site-packages/spyderlib/widgets/externalshell/sitecustomize.py",
line 48, in execfile
exec(compile(open(filename, 'rb').read(), filename, 'exec'), namespace)
File "/home/hash/example.py", line 10, in <module>
fig.savefig(sio, format="png")
File "/usr/lib64/python3.3/site-packages/matplotlib/figure.py", line
1470, in savefig
self.canvas.print_figure(*args, **kwargs)
File "/usr/lib64/python3.3/site-packages/matplotlib/backend_bases.py",
line 2192, in print_figure
**kwargs)
File
"/usr/lib64/python3.3/site-packages/matplotlib/backends/backend_agg.py",
line 525, in print_png
filename_or_obj, self.figure.dpi)
TypeError: string argument expected, got 'bytes'
2014-11-01 17:21 GMT+01:00 Scott Lasley <sl...@sp...>:
> This works for me with python 3.4.2
>
> import matplotlib.pyplot as plt
> from io import BytesIO
> import base64
>
> fig = plt.figure()
> ax = fig.add_subplot(111)
> ax.plot([1,2,3])
>
> sio = BytesIO()
>
> fig.savefig(sio, format="png")
>
> html = """<html><body>
> <img src="data:image/png;base64,{}"/>
> </body></html>""".format(base64.encodebytes(sio.getvalue()).decode())
>
>
> For python 2.7.8 change html =""" to
>
> html = """<html><body>
> <img src="data:image/png;base64,%s"/>
> </body></html>""" % base64.encodestring(sio.getvalue())
>
> Best regards,
> Scott
>
>
> On Nov 1, 2014, at 7:37 AM, Julien Hillairet <jul...@gm...>
> wrote:
>
> > Dear all,
> > I'm trying to write a html page content in which a png figure is
> generated by matplotlib, with Python3.
> > However, the following piece of code does not work with
> matplotlib/Python3 (while it should work with Python2). The error is the
> following on
> > TypeError: string argument expected, got 'bytes'
> > when on fig.savefig(sio, format="png")
> > Could someone explain me how to do it ?
> > Best regards,
> > Julien
> >
> > --------------------------------------------
> >
> > import matplotlib.pyplot as plt
> >
> > from io import StringIO
> > fig = plt.figure()
> > ax = fig.add_subplot(111)
> > ax.plot([1,2,3])
> >
> > sio = StringIO()
> >
> > fig.savefig(sio, format="png")
> >
> > html = """<html><body>
> > ...a bunch of text and html here...
> > <img src="data:image/png;base64,%s"/>
> > ...more text and html...
> > </body></html>""" % sio.getvalue().strip()
> >
> >
> ------------------------------------------------------------------------------
>
>
|
|
From: Peter K. <pke...@gm...> - 2014-11-01 19:49:15
|
Hi Jerzy and Ben,
Thanks for you answers!
I must say that although Ben is right in principle, Jerzy's answer is
exactly what I was looking for. Even if matplotlib can't do it by
itself, there appears to be other libraries that do the heavy lifting
and return a set of triangles which can then be placed in a
Polygon3DCollection and plotted.
It's always good to know what something is called. Searching for '3D
contours' was leading nowhere, but plugging in '*polygonization of the
implicit surface' *returned a multitude of descriptions of the problem
and libraries. It turns out I had been trying to implement the marching
cubes algorithm myself for the better part of the last week. Oops!
Thanks again to the both of you!!
-Peter
On 11/1/14, 8:34 PM, Benjamin Root wrote:
> Jerzy,
>
> Actually, my response is still completely valid. You can only plot
> surfaces that can be represented parametrically in two dimensions.
> Find me a single plotting library that can do differently without
> having to get to this final step. For matplotlib, it is up to the user
> to get the data to that point. As you stated, he is seeking
> polygonization of an *implicit* surface. Matplotlib has no means of
> understanding this. And this is unlikely to happen anytime soon given
> the inherent 2D limitations of Matplotlib.
>
> I am sorry if the answer is unsatisfactory to you, but it is the
> correct one to give.
>
> Ben Root
>
>
> On Sat, Nov 1, 2014 at 2:49 PM, Jerzy Karczmarczuk
> <jer...@un... <mailto:jer...@un...>>
> wrote:
>
>
> Le 01/11/2014 19:21, Benjamin Root answers the query of Peter
> Kerpedjiev, who wants to plot (with Matplotlib) the surface of an
> implicit surface (at least it was his presented example).
>
>> Your comment "of course, plotting a sphere can be done in
>> spherical coordinates" is actually the right thought process.
>> Spherical coordinates is how you parametrize your spherical
>> surface. Pick a coordinate system that is relevant to your
>> problem at hand and use it.
>
> Sorry Ben, but this is not an answer. P.K. clearly states that his
> case is more complicated, and no parametrization is likely.
> Anyway, the spherical exercise as it is presented uses the 3D
> constraint, it is not parametric.
>
> The general solution is the *polygonization of the implicit
> surface*, which is a well established technology (although
> non-trivial). For example the /marching cubes / marching
> simplices/ algorithms and their variants.
> These are techniques for the polygonization of a mesh.
>
> If P.K. has an analytic formula for his distributions, and is able
> to compute gradients, etc., there are some more efficient
> techniques, but in general it is the case for solving the equation
> F(x,y,z)=0 for {x,y,z} ; here Matplotlib doesn't offer (yet) any
> tools if I am not mistaken.
>
> Jerzy Karczmarczuk
> Caen, France.
>
>
>
> ------------------------------------------------------------------------------
>
> _______________________________________________
> Matplotlib-users mailing list
> Mat...@li...
> <mailto:Mat...@li...>
> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
>
>
>
>
> ------------------------------------------------------------------------------
>
>
> _______________________________________________
> Matplotlib-users mailing list
> Mat...@li...
> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
|
|
From: Benjamin R. <ben...@ou...> - 2014-11-01 19:34:29
|
Jerzy,
Actually, my response is still completely valid. You can only plot surfaces
that can be represented parametrically in two dimensions. Find me a single
plotting library that can do differently without having to get to this
final step. For matplotlib, it is up to the user to get the data to that
point. As you stated, he is seeking polygonization of an *implicit*
surface. Matplotlib has no means of understanding this. And this is
unlikely to happen anytime soon given the inherent 2D limitations of
Matplotlib.
I am sorry if the answer is unsatisfactory to you, but it is the correct
one to give.
Ben Root
On Sat, Nov 1, 2014 at 2:49 PM, Jerzy Karczmarczuk <
jer...@un...> wrote:
>
> Le 01/11/2014 19:21, Benjamin Root answers the query of Peter Kerpedjiev,
> who wants to plot (with Matplotlib) the surface of an implicit surface (at
> least it was his presented example).
>
> Your comment "of course, plotting a sphere can be done in spherical
> coordinates" is actually the right thought process. Spherical coordinates
> is how you parametrize your spherical surface. Pick a coordinate system
> that is relevant to your problem at hand and use it.
>
>
> Sorry Ben, but this is not an answer. P.K. clearly states that his case is
> more complicated, and no parametrization is likely. Anyway, the spherical
> exercise as it is presented uses the 3D constraint, it is not parametric.
>
> The general solution is the *polygonization of the implicit surface*,
> which is a well established technology (although non-trivial). For example
> the *marching cubes / marching simplices* algorithms and their variants.
> These are techniques for the polygonization of a mesh.
>
> If P.K. has an analytic formula for his distributions, and is able to
> compute gradients, etc., there are some more efficient techniques, but in
> general it is the case for solving the equation F(x,y,z)=0 for {x,y,z} ;
> here Matplotlib doesn't offer (yet) any tools if I am not mistaken.
>
> Jerzy Karczmarczuk
> Caen, France.
>
>
>
>
> ------------------------------------------------------------------------------
>
> _______________________________________________
> Matplotlib-users mailing list
> Mat...@li...
> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
>
>
|
|
From: Jerzy K. <jer...@un...> - 2014-11-01 19:09:00
|
Le 01/11/2014 19:21, Benjamin Root answers the query of Peter
Kerpedjiev, who wants to plot (with Matplotlib) the surface of an
implicit surface (at least it was his presented example).
> Your comment "of course, plotting a sphere can be done in spherical
> coordinates" is actually the right thought process. Spherical
> coordinates is how you parametrize your spherical surface. Pick a
> coordinate system that is relevant to your problem at hand and use it.
Sorry Ben, but this is not an answer. P.K. clearly states that his case
is more complicated, and no parametrization is likely. Anyway, the
spherical exercise as it is presented uses the 3D constraint, it is not
parametric.
The general solution is the *polygonization of the implicit surface*,
which is a well established technology (although non-trivial). For
example the /marching cubes / marching simplices/ algorithms and their
variants.
These are techniques for the polygonization of a mesh.
If P.K. has an analytic formula for his distributions, and is able to
compute gradients, etc., there are some more efficient techniques, but
in general it is the case for solving the equation F(x,y,z)=0 for
{x,y,z} ; here Matplotlib doesn't offer (yet) any tools if I am not
mistaken.
Jerzy Karczmarczuk
Caen, France.
|
|
From: Benjamin R. <ben...@ou...> - 2014-11-01 18:21:57
|
Generally speaking, a plottable 3D surface can be represented parametrically in 2D (hence why it is a surface). Your point cloud can not be represented parametrically in 2 dimensions, hence why you are having difficulty figuring out how to plot it as a surface. I used to have similar problems with 3D plotting (both here and in Matlab) before I came to this realization. Your comment "of course, plotting a sphere can be done in spherical coordinates" is actually the right thought process. Spherical coordinates is how you parametrize your spherical surface. Pick a coordinate system that is relevant to your problem at hand and use it. I hope this helps! Ben Root On Sat, Nov 1, 2014 at 2:07 PM, Peter Kerpedjiev <pke...@gm...> wrote: > Hi, > > I'm trying to plot an outline of an arbitrary 3D shape using > matplotlib's plot_surface, and I wanted to ask if any one has any ideas > as to how to do it. Here's the beginnings of a simple example: > > # create a grid > resolution = 10 > > xs = np.linspace(-1,1,resolution) > ys = np.linspace(-1,1,resolution) > zs = np.linspace(-1,1,resolution) > > X,Y,Z = np.meshgrid(xs, ys, zs) > > #Then we can calculate the square of the distance of each point to the > center: > W = X**2 + Y**2 + Z**2 > > # Let's see which points are within a certain radius: > C = W < 1. > > # this can be used to create a point-cloud > x = X[C] > y = Y[C] > z = Z[C] > > From this I tried a lot options, the best being to do some XOR > operations on the array C to get a list of points which are on the > surface of the sphere. My question is, can anybody see a reasonable way > to plot this surface using mplot3D? > > Of course plotting a sphere can be done using spherical coordinates, but > that defeats the purpose of this example :) This is just a > simplification as the application is actually to draw 3D contours (i.e. > shapes, rather than iso-lines) of a three-parameter probability > distribution. > > Thanks in advance, > > -Peter > > > > > > > > > > > > ------------------------------------------------------------------------------ > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > |
|
From: Hartmut K. <har...@gm...> - 2014-11-01 18:20:59
|
> On 26 October 2014 00:18, Hartmut Kaiser <har...@gm...> wrote: > At this point we assume, that polys[0] is a linear ring to be interpreted > as > a polygon exterior and polys[1:] are the corresponding interiors for > polys[0]. > > Here are our questions: > > Is this assumption correct? > Is there any detailed documentation describing the structure of the > returned > geometries? > Are the linear rings supposed to be correctly oriented (area > 0 for > exteriors and area < 0 for the interiors)? > > Hello Hartmut, > In brief, the answers are no, no and yes. > In more detail, assuming polys is not empty then it will contain one or > more polygon exteriors and zero or more interiors, and they can be in any > order. Here is a simple example where polys[0] is an interior and > polys[1] an exterior: > > x = [0, 0, 1, 1, 0.5] > y = [0, 1, 0, 1, 0.5] > z = [0.5, 0.5, 0.5, 0.5, 0] > triang = tri.Triangulation(x, y) > contour = plt.tricontourf(triang, z, levels=[0.2, 0.4]) > The returned geometries are purposefully not documented. They are an > 'implementation detail' and not considered part of the public interface. > and as such they could change at any time and hence should not be relied > upon. Of course you can choose to access them if you wish, as I do myself > sometimes, but we make no promises about what the order of the polygons > is, or that it won't change tomorrow. > In reality the order of the polygons is chosen to be something that is > easy for both the contour generation routines to create and for the > various backends to render. If you were to look at the output generated > by contourf, you will see that it is organised differently from that > produced by tricontourf and is more like you would like it to be, i.e. one > or more groups of an exterior polygon followed by zero or more > interiors. This is historical as the contourf code dates from before all > of the backends were able to render arbitrary groups of exterior and > interior polygons, and so the contourf code has to calculate the order for > the backends. When the tricontourf code was written the backends were all > able to calculate the exterior/interior containment themselves, so there > was no need for tricontourf to do it as well. Thanks Ian! Your detailed answer is much appreciated. As you might have already guessed, we have quite some problems creating clean geometries from the generated contour data. I have tried to put together one (reasonably) small test case illustrating at least one of our issues. I apologize for the lengthy code attached. The two attached figures demonstrate what we see. Matplotlib.png (generated by the library) does not really look ok. Also, the attached shape.png shows that there are a lot of geometries generated which are self-intersecting (highlighted in dark blue), and we already skip polygons with less than 3 points. BTW, there are many polygons stacked with the same geometries. Anything we can do about this? Thanks! Regards Hartmut --------------- http://boost-spirit.com http://stellar.cct.lsu.edu |
|
From: Peter K. <pke...@gm...> - 2014-11-01 18:07:45
|
Hi, I'm trying to plot an outline of an arbitrary 3D shape using matplotlib's plot_surface, and I wanted to ask if any one has any ideas as to how to do it. Here's the beginnings of a simple example: # create a grid resolution = 10 xs = np.linspace(-1,1,resolution) ys = np.linspace(-1,1,resolution) zs = np.linspace(-1,1,resolution) X,Y,Z = np.meshgrid(xs, ys, zs) #Then we can calculate the square of the distance of each point to the center: W = X**2 + Y**2 + Z**2 # Let's see which points are within a certain radius: C = W < 1. # this can be used to create a point-cloud x = X[C] y = Y[C] z = Z[C] From this I tried a lot options, the best being to do some XOR operations on the array C to get a list of points which are on the surface of the sphere. My question is, can anybody see a reasonable way to plot this surface using mplot3D? Of course plotting a sphere can be done using spherical coordinates, but that defeats the purpose of this example :) This is just a simplification as the application is actually to draw 3D contours (i.e. shapes, rather than iso-lines) of a three-parameter probability distribution. Thanks in advance, -Peter |
|
From: Scott L. <sl...@sp...> - 2014-11-01 16:21:58
|
This works for me with python 3.4.2
import matplotlib.pyplot as plt
from io import BytesIO
import base64
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot([1,2,3])
sio = BytesIO()
fig.savefig(sio, format="png")
html = """<html><body>
<img src="data:image/png;base64,{}"/>
</body></html>""".format(base64.encodebytes(sio.getvalue()).decode())
For python 2.7.8 change html =""" to
html = """<html><body>
<img src="data:image/png;base64,%s"/>
</body></html>""" % base64.encodestring(sio.getvalue())
Best regards,
Scott
On Nov 1, 2014, at 7:37 AM, Julien Hillairet <jul...@gm...> wrote:
> Dear all,
> I'm trying to write a html page content in which a png figure is generated by matplotlib, with Python3.
> However, the following piece of code does not work with matplotlib/Python3 (while it should work with Python2). The error is the following on
> TypeError: string argument expected, got 'bytes'
> when on fig.savefig(sio, format="png")
> Could someone explain me how to do it ?
> Best regards,
> Julien
>
> --------------------------------------------
>
> import matplotlib.pyplot as plt
>
> from io import StringIO
> fig = plt.figure()
> ax = fig.add_subplot(111)
> ax.plot([1,2,3])
>
> sio = StringIO()
>
> fig.savefig(sio, format="png")
>
> html = """<html><body>
> ...a bunch of text and html here...
> <img src="data:image/png;base64,%s"/>
> ...more text and html...
> </body></html>""" % sio.getvalue().strip()
>
> ------------------------------------------------------------------------------
|
|
From: Benjamin R. <ben...@ou...> - 2014-11-01 14:13:51
|
Please post the entire traceback so that we can know the context of the error message. Also, exactly which versions of matplotlib and python are you using? Ben Root On Sat, Nov 1, 2014 at 7:37 AM, Julien Hillairet <jul...@gm... > wrote: > Dear all, > > I'm trying to write a html page content in which a png figure is generated > by matplotlib, with Python3. > > However, the following piece of code does not work with matplotlib/Python3 > (while it should work with Python2). The error is the following on > > TypeError: string argument expected, got 'bytes' > > when on fig.savefig(sio, format="png") > > > Could someone explain me how to do it ? > > Best regards, > > Julien > > -------------------------------------------- > > import matplotlib.pyplot as plt > > > from io import StringIO > > fig = plt.figure() > > ax = fig.add_subplot(111) > > ax.plot([1,2,3]) > > > sio = StringIO() > > > fig.savefig(sio, format="png") > > > html = """<html><body> > > ...a bunch of text and html here... > > <img src="data:image/png;base64,%s"/> > > ...more text and html... > > </body></html>""" % sio.getvalue().strip() > > > > ------------------------------------------------------------------------------ > > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > > |
|
From: Julien H. <jul...@gm...> - 2014-11-01 11:37:09
|
Dear all, I'm trying to write a html page content in which a png figure is generated by matplotlib, with Python3. However, the following piece of code does not work with matplotlib/Python3 (while it should work with Python2). The error is the following on TypeError: string argument expected, got 'bytes' when on fig.savefig(sio, format="png") Could someone explain me how to do it ? Best regards, Julien -------------------------------------------- import matplotlib.pyplot as plt from io import StringIO fig = plt.figure() ax = fig.add_subplot(111) ax.plot([1,2,3]) sio = StringIO() fig.savefig(sio, format="png") html = """<html><body> ...a bunch of text and html here... <img src="data:image/png;base64,%s"/> ...more text and html... </body></html>""" % sio.getvalue().strip() |
|
From: Asma R. <asm...@gm...> - 2014-11-01 00:29:14
|
Hi, I have made a plot with grid arranged in 2 rows and 5 columns. I need to provide some spacing between the 3 heat maps so that the color bars don't overlap with the adjacent plots but at the same time I need 0 spacing between grid 1(tree),2(genome diagram) and 3(1st heat map). How can I achieve this? This link provides the plot I have made so far: http://stackoverflow.com/questions/26667972/padding-between-some-of-the-grid-spaces-and-and-none-between-others-matplotlib Here is the piece of code that I use to make the grid space: heatmapGS = gridspec.GridSpec(2,5,wspace=0.0,hspace=0.0,width_ratios=[0.60,0.90,1,1,1],height_ratios=[1,1,1,1,1]) (Sorry for posting it on both, I did not receive any good answers there hence attempting it here). Thanks, Asma |
|
From: Martin W. <mwi...@gm...> - 2014-10-31 15:53:46
|
I am having trouble executing the example for typesetting labels with latex from http://matplotlib.org/users/usetex.html. Copying the standard example, tex_demo.py, to a file and executing it gives the following output: Traceback (most recent call last): File "scratch.py", line 21, in <module> plt.savefig('tex_demo') File "/usr/lib/pymodules/python2.7/matplotlib/pyplot.py", line 561, in savefig return fig.savefig(*args, **kwargs) File "/usr/lib/pymodules/python2.7/matplotlib/figure.py", line 1421, in savefig self.canvas.print_figure(*args, **kwargs) File "/usr/lib/pymodules/python2.7/matplotlib/backend_bases.py", line 2220, in print_figure **kwargs) File "/usr/lib/pymodules/python2.7/matplotlib/backends/backend_agg.py", line 505, in print_png FigureCanvasAgg.draw(self) File "/usr/lib/pymodules/python2.7/matplotlib/backends/backend_agg.py", line 451, in draw self.figure.draw(self.renderer) File "/usr/lib/pymodules/python2.7/matplotlib/artist.py", line 55, in draw_wrapper draw(artist, renderer, *args, **kwargs) File "/usr/lib/pymodules/python2.7/matplotlib/figure.py", line 1034, in draw func(*args) File "/usr/lib/pymodules/python2.7/matplotlib/artist.py", line 55, in draw_wrapper draw(artist, renderer, *args, **kwargs) File "/usr/lib/pymodules/python2.7/matplotlib/axes.py", line 2086, in draw a.draw(renderer) File "/usr/lib/pymodules/python2.7/matplotlib/artist.py", line 55, in draw_wrapper draw(artist, renderer, *args, **kwargs) File "/usr/lib/pymodules/python2.7/matplotlib/axis.py", line 1105, in draw self.label.draw(renderer) File "/usr/lib/pymodules/python2.7/matplotlib/artist.py", line 55, in draw_wrapper draw(artist, renderer, *args, **kwargs) File "/usr/lib/pymodules/python2.7/matplotlib/text.py", line 594, in draw self._fontproperties, angle, mtext=self) File "/usr/lib/pymodules/python2.7/matplotlib/backends/backend_agg.py", line 241, in draw_tex self._renderer.draw_text_image(Z, x, y, angle, gc) OverflowError: cannot convert float infinity to integer My system is Linux mwlaptop 3.16.0-24-generic #32-Ubuntu SMP Tue Oct 28 13:07:32 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux My matplotlib version is 1.3.1, and I am using standard packages from my Ubuntu 14.10 distribution. |
|
From: Thomas C. <tca...@gm...> - 2014-10-30 17:04:39
|
https://stackoverflow.com/questions/12841847/step-function-in-matplotlib/12846384#12846384 is a much better example of how to control the step function. On Thu, Oct 30, 2014 at 1:01 PM, Pierre Haessig <pie...@cr...> wrote: > You might also be interested in > http://stackoverflow.com/questions/15188005/linestyle-in-matplotlib-step-function > which details the `drawstyle` parameters. It can be set to 'steps-post' > for example. > > The only case I was not able to cover with this parameter are the > fill_between plots, because they do not use Line objects... > > -- > Pierre > > ------------------------------------------------------------------------------ > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- Thomas Caswell tca...@gm... |
|
From: Pierre H. <pie...@cr...> - 2014-10-30 17:01:47
|
You might also be interested in http://stackoverflow.com/questions/15188005/linestyle-in-matplotlib-step-function which details the `drawstyle` parameters. It can be set to 'steps-post' for example. The only case I was not able to cover with this parameter are the fill_between plots, because they do not use Line objects... -- Pierre |
|
From: Skip M. <sk...@po...> - 2014-10-30 16:54:39
|
Benjamin> Kinda sounds a bit like a barchart with the 'step' option, I think? Almost, but not quite. I think of barcharts as displaying truly discrete data, often with the dependent variable being a count of some sort and the independent variable being a bucket. In my example, while prices X and Y are constrained to be discrete by the nature of the market (US stocks trade in one cent increments, for example), they are connected in time, and there is no fixed "bucket" size (time increment). Sterling> http://stackoverflow.com/questions/8921296/how-do-i-plot-a-step-function-with-matplotlib-in-python Thanks, that's exactly what I needed. I wasn't using the correct terms when searching Google. I was thinking "interpolation," not "step function." Skip |
|
From: Sterling S. <sm...@fu...> - 2014-10-30 16:34:07
|
http://stackoverflow.com/questions/8921296/how-do-i-plot-a-step-function-with-matplotlib-in-python On Oct 30, 2014, at 11:29AM, Benjamin Root wrote: > Kinda sounds a bit like a barchart with the 'step' option, I think? > > On Thu, Oct 30, 2014 at 12:16 PM, Skip Montanaro <sk...@po...> wrote: > I've been doing some work with d3 recently. It's certainly been an education... Out of the box, it supports several different types of interpolation between two points, which I've found quite useful. It allows me to focus on assembling my data, and not worry about transforming it to achieve the desired visual effect. For example, in trading markets, once a trade is seen at a certain price, X, it's useful to think of that price holding until the next trade price seen at Y. With d3's "step-after" interpolation, given two points, (t0, X) and (t1, Y), instead of drawing a single line between the two points, it draws a horizontal line between (t0, X) and (t1, X), then a vertical line between (t1, X) and (t1, Y). > > I've don't a bit of searching, but didn't find anything obviously like this in matplotlib. Does it support such a feature? > > Thx, > > Skip > > > > ------------------------------------------------------------------------------ > > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > > > ------------------------------------------------------------------------------ > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users |
|
From: Benjamin R. <ben...@ou...> - 2014-10-30 16:29:50
|
Kinda sounds a bit like a barchart with the 'step' option, I think? On Thu, Oct 30, 2014 at 12:16 PM, Skip Montanaro <sk...@po...> wrote: > I've been doing some work with d3 <http://d3js.org/> recently. It's > certainly been an education... Out of the box, it supports several > different types of interpolation between two points > <https://github.com/mbostock/d3/wiki/SVG-Shapes#line_interpolate>, which > I've found quite useful. It allows me to focus on assembling my data, and > not worry about transforming it to achieve the desired visual effect. For > example, in trading markets, once a trade is seen at a certain price, X, > it's useful to think of that price holding until the next trade price seen > at Y. With d3's "step-after" interpolation, given two points, (t0, X) and > (t1, Y), instead of drawing a single line between the two points, it draws > a horizontal line between (t0, X) and (t1, X), then a vertical line between > (t1, X) and (t1, Y). > > I've don't a bit of searching, but didn't find anything obviously like > this in matplotlib. Does it support such a feature? > > Thx, > > Skip > > > > > ------------------------------------------------------------------------------ > > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > > |
|
From: Skip M. <sk...@po...> - 2014-10-30 16:16:51
|
I've been doing some work with d3 <http://d3js.org/> recently. It's certainly been an education... Out of the box, it supports several different types of interpolation between two points <https://github.com/mbostock/d3/wiki/SVG-Shapes#line_interpolate>, which I've found quite useful. It allows me to focus on assembling my data, and not worry about transforming it to achieve the desired visual effect. For example, in trading markets, once a trade is seen at a certain price, X, it's useful to think of that price holding until the next trade price seen at Y. With d3's "step-after" interpolation, given two points, (t0, X) and (t1, Y), instead of drawing a single line between the two points, it draws a horizontal line between (t0, X) and (t1, X), then a vertical line between (t1, X) and (t1, Y). I've don't a bit of searching, but didn't find anything obviously like this in matplotlib. Does it support such a feature? Thx, Skip |
|
From: zhangtao <tao...@gm...> - 2014-10-29 08:14:23
|
With the sample code below, in matplotlib 1.3.1, the Text are placed at top left, which is like the docs said, "/If a ‘points’ or ‘pixels’ option is specified, values will be added to the bottom-left and if negative, values will be subtracted from the top-right/". http://matplotlib.org/api/text_api.html <http://matplotlib.org/api/text_api.html#matplotlib.text.Annotation> but in matplotlib 1.4.2, the Text showed at bottom. Is it a bug here? #sample code: import matplotlib.pyplot as plt fig = plt.figure(1, figsize=(8,5)) ax=fig.add_subplot(1,1,1) ax.annotate('somthing', (8, -8), xycoords='axes points', va="top", ha='left', size=10, color='r') plt.show() -- View this message in context: http://matplotlib.1069221.n5.nabble.com/ax-annotate-in-1-4-2-behave-different-from-1-3-1-tp44229.html Sent from the matplotlib - users mailing list archive at Nabble.com. |
|
From: Benjamin R. <ben...@ou...> - 2014-10-28 17:55:23
|
One thing I remember from back in the day was that the text used to be supplied as a group of glyphs, so text extraction and modification was really easy (I was able to do some simple tweeks from the command-line). But then a few years ago, to address some problem (I can't remember what), it was decided that the glyphs would be individually placed, making it hard to extract out groups of text. On Tue, Oct 28, 2014 at 1:29 AM, Jeff Blackburne <jbl...@al...> wrote: > On Tue, Oct 28, 2014 at 2:30 AM, Moore, Eric (NIH/NIDDK) [F] < > eri...@ni...> wrote: > > Hi, > > > > Is it ever possible to edit the text produced by matplotlib when saving > to ps, eps or pdf? No matter the combination of setting I try the text > always imports as outlines rather than text. > > > > If it makes a difference, I'm using CorelDraw. Does this work for > anyone? > > > > Eric > > Hi Eric, > > Have you tried setting text.usetex to True in your matplotlibrc? That > might help. For Postscript files, you may also have to use Poppler or Xpdf > as your distiller. > > See http://matplotlib.org/users/usetex.html for more details. > > Hope that helps, > Jeff > > > > ------------------------------------------------------------------------------ > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > |
|
From: Benjamin R. <ben...@ou...> - 2014-10-28 15:55:01
|
No problem! On Tue, Oct 28, 2014 at 12:00 AM, Matthew Brett <mat...@gm...> wrote: > On Mon, Oct 27, 2014 at 11:06 AM, Benjamin Root <ben...@ou...> wrote: > > Which version of matplotlib are you running? I could have sworn this was > > fixed awhile ago. If I understand the problem correctly, essentially, the > > autoscalling was clipping empty patches out. > > I'm embarrassed to say that I didn't look at my version, and now I do, > it was 1.3.1, and you are quite right, 1.4.0 (and 1.4.2) fixes that. > Thanks, and, sorry to write too quickly, > > Matthew > |
|
From: Pier G. F. <pie...@cm...> - 2014-10-28 14:15:18
|
Hi, according to mpl_toolkits/basemap/__init__.py Basemap depends on scipy for some interpolation routine and OWSLib for the wmsimage routine. However scipy and OWSLib are not listed among the dependencies on the documentation web page about installation: http://matplotlib.org/basemap/users/installing.html#dependencies I think scipy and OWSLib should be listed there, at least as optional libraries (like PIL), right? Best regards. -- Pier Giuseppe Fogli CMCC - Centro Euro-Mediterraneo sui Cambiamenti Climatici (www.cmcc.it) Viale Aldo Moro, 44 40127 Bologna ITALY Phone: +39 051 3782606 FAX: +39 051 3782655 e-mail: piergiuseppe DOT fogli AT cmcc DOT it skype: beppecmcc |
|
From: Jeff B. <jbl...@al...> - 2014-10-28 05:31:14
|
On Tue, Oct 28, 2014 at 2:30 AM, Moore, Eric (NIH/NIDDK) [F] <eri...@ni...> wrote: > Hi, > > Is it ever possible to edit the text produced by matplotlib when saving to ps, eps or pdf? No matter the combination of setting I try the text always imports as outlines rather than text. > > If it makes a difference, I'm using CorelDraw. Does this work for anyone? > > Eric Hi Eric, Have you tried setting text.usetex to True in your matplotlibrc? That might help. For Postscript files, you may also have to use Poppler or Xpdf as your distiller. See http://matplotlib.org/users/usetex.html for more details. Hope that helps, Jeff |
|
From: Joy m. m. <joy...@gm...> - 2014-10-28 05:16:32
|
I have had an illustrator work with my eps plots generated in MPL, and she used to get text. She was using some Adobe software, IIRC. Joy On Tue, Oct 28, 2014 at 2:30 AM, Moore, Eric (NIH/NIDDK) [F] < eri...@ni...> wrote: > Hi, > > Is it ever possible to edit the text produced by matplotlib when saving to > ps, eps or pdf? No matter the combination of setting I try the text always > imports as outlines rather than text. > > If it makes a difference, I'm using CorelDraw. Does this work for anyone? > > Eric > > > ------------------------------------------------------------------------------ > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > -- The best ruler, when he finishes his tasks and completes his affairs, the people say “It all happened naturally” - Te Tao Ch'ing |
|
From: Matthew B. <mat...@gm...> - 2014-10-28 04:01:16
|
On Mon, Oct 27, 2014 at 11:06 AM, Benjamin Root <ben...@ou...> wrote: > Which version of matplotlib are you running? I could have sworn this was > fixed awhile ago. If I understand the problem correctly, essentially, the > autoscalling was clipping empty patches out. I'm embarrassed to say that I didn't look at my version, and now I do, it was 1.3.1, and you are quite right, 1.4.0 (and 1.4.2) fixes that. Thanks, and, sorry to write too quickly, Matthew |