SourceForge logo
SourceForge logo
Menu

matplotlib-users — Discussion related to using matplotlib

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






Showing 7 results of 7

From: Benjamin R. <ben...@ou...> - 2012年09月09日 19:32:54
On Tue, Apr 10, 2012 at 12:22 PM, wiswit <cha...@gm...> wrote:
> Dear all, I use matplotlib 1.1.0. import matplotlib.pyplot as plt
> plt.plot(np.arange(10),'ro',mec='none') when I use plt.show(), there is
> only blank frame with axis not no points. but plt.plot(np.arange(10),'ro')
> will give good plot with read filled circles and black edges.
> plt.scatter(np.arange(10),np.arange(10),c='r',marker='o',edgecolor='none')
> is working fine. but I really think plt.plot is a very good and easy
> function if you don't make complex scatter points. and the circles look
> much nicer than that produced by plt.scatter (thought I don't know why as
> they use the same symble....) does anyone else have found the same ? thanks
> to all, Chao
>
This works for me with GTKAgg backend. If this is still a problem for you,
which backend are you using?
Ben Root
On Tue, Apr 10, 2012 at 12:43 PM, wiswit <cha...@gm...> wrote:
>
> Dear all,
>
> I found that the numpoints in legend function for scatter plot is not
> working?
>
> import matplotlib as mat
> import matplotlib.pyplot as plt
> In [59]: mat.__version__
> Out[59]: '1.1.0'
>
> #ordinary plot working
> fig=plt.figure()
> ax=fig.add_subplot(111)
> ax.plot(np.arange(10),'ro',label='tst')
> ax.legend(numpoints=1)
> plt.show()
>
> #but not scatter plot
> fig=plt.figure()
> ax=fig.add_subplot(111)
> ax.scatter(np.arange(10),np.arange(10),marker='o',label='tst')
> ax.legend(numpoints=1)
> plt.show()
>
> cheers,
>
> chao
>
>
Confirmed... this is still broken.
Ben Root
From: Benjamin R. <ben...@ou...> - 2012年09月09日 19:15:13
On Tue, May 22, 2012 at 9:18 AM, Stevenson, Samuel <
Sam...@co...> wrote:
> Hi Ben****
>
> ** **
>
> I am using 1.0.0. My colleague has 1.1.0 installed on his machine and is
> able to reproduce the same problem.****
>
> ** **
>
> Thanks****
>
>
> Sam
>
Going through my old unresolved emails, I came across this one. I suspect
that whatever has caused this problem in v1.1.0 is still present in v1.2.0
that we will be putting out an RC for. If you can make a small script that
can demonstrate the memory leak, maybe we can track it down and nail this
sucker before the final release?
Cheers!
Ben Root
From: Eric F. <ef...@ha...> - 2012年09月09日 19:15:01
On 2012年09月09日 8:50 AM, Benjamin Root wrote:
>
>
> On Wed, Aug 15, 2012 at 5:40 AM, Jesper Larsen <jes...@gm...
> <mailto:jes...@gm...>> wrote:
>
> Hi Matplotlib users
>
> I have an application where performance is critical and matplotlib is
> the performance bottleneck. I am making a lot of figures using the
> same basic setup of the figure. And from my profiling I can see that
> this basic setup accounts for most of the CPU time. Let us say that I
> make a given figure including some axes. My questions are:
>
> 1. Can I make a copy of this figure including axes (copy.deepcopy does
> not work on Figure objects) and use the copy for plotting on?
>
> 2. And how? Should I use the frozen method somehow?
>
> I did do something similar some years back. But at the time I removed
> the stuff I had drawn on the figure. I would like to avoid this for
> two reasons: 1) Thread safety, I must be able to draw figures in
> several simultaneous threads and 2) I really had to go into some
> low-level details in matplotlib (not a show-stopper, but for
> maintenance reasons I would like to keep the code as clear as
> possible).
>
> Best regards,
> Jesper
>
>
> Jesper,
>
> An experimental feature that will be available in the upcoming v1.2.0
> release will be pickling support. It is marked as experimental as there
> are plenty of untested edge cases, but it should be a huge step in the
> right direction for the feature that you and many others have asked
> for. We certainly will welcome any and all feedback on what does and
> does not pickle well.
>
> Cheers!
> Ben Root
Some benchmarking would be useful as well. Pickling/unpickling can be 
very slow.
Eric
From: Benjamin R. <ben...@ou...> - 2012年09月09日 18:51:16
On Wed, Aug 15, 2012 at 5:40 AM, Jesper Larsen <jes...@gm...>wrote:
> Hi Matplotlib users
>
> I have an application where performance is critical and matplotlib is
> the performance bottleneck. I am making a lot of figures using the
> same basic setup of the figure. And from my profiling I can see that
> this basic setup accounts for most of the CPU time. Let us say that I
> make a given figure including some axes. My questions are:
>
> 1. Can I make a copy of this figure including axes (copy.deepcopy does
> not work on Figure objects) and use the copy for plotting on?
>
> 2. And how? Should I use the frozen method somehow?
>
> I did do something similar some years back. But at the time I removed
> the stuff I had drawn on the figure. I would like to avoid this for
> two reasons: 1) Thread safety, I must be able to draw figures in
> several simultaneous threads and 2) I really had to go into some
> low-level details in matplotlib (not a show-stopper, but for
> maintenance reasons I would like to keep the code as clear as
> possible).
>
> Best regards,
> Jesper
>
>
Jesper,
An experimental feature that will be available in the upcoming v1.2.0
release will be pickling support. It is marked as experimental as there
are plenty of untested edge cases, but it should be a huge step in the
right direction for the feature that you and many others have asked for.
We certainly will welcome any and all feedback on what does and does not
pickle well.
Cheers!
Ben Root
From: Eric F. <ef...@ha...> - 2012年09月09日 07:27:05
On 2012年09月08日 5:34 PM, Jody Klymak wrote:
>
>>
>> This is one of the big differences between python and matlab: in
>> matlab, if an m-file has changed within a session, the change is
>> immediately effective. The python "import" statement is very
>> different.
>
> Gotchya, thanks.
>
> So, while I'm being a bother:
>
> in Matlab, I often organize data in structures as:
>
> adcp.time [1xN] adcp.z [Mx1] adcp.u [MxN]
>
> where time is the x-axis, z the z-axis and u an array of values at
> each depth and time (an example chosen after Eric's heart).
>
> What is the recommended way to represent this in python? I see the
> info about numpy structured arrays. Is that it? It also seems that
> Mx1 arrays are hard in python. It also seems you need to preallocate
> the whole array, which isn't very flexible compared to how you can do
> it in Matlab. Am I missing something?
Jody,
A structured array is probably overkill; it would require storing 
everything as MxN, which may not be necessary.
Most of the time, if you have something that is 1-D, you can just keep 
it in a 1-D array. If you need adcp.time to behave as if it were MxN, 
you can just use it as-is, because numpy broadcasting will add 
dimensions to the left as needed. If you need adcp.z to behave as if it 
were MxN, you can simply index it like this: adcp.z[:, np.newaxis].
Now, for the structure syntax, you can use a class, e.g.
class Data:
 pass
adcp = Data()
adcp.time = time
adcp.z = z
adcp.u = u
Now your adcp instance is just like the matlab structure.
This works, but you might want to use a more flexible container. One 
variation on the Bunch is here:
http://currents.soest.hawaii.edu/hgstage/pycurrents/file/8bf05a53b326/system/misc.py.
It is fancier than you need for now, but illustrates the sort of thing 
you can do with python, and it will work fine even when you don't need 
all its features. You could initialize it like this:
adcp = Bunch(time=time, z=z, u=u)
assuming, as before, that you already have individual numpy arrays 
called time, z, and u. You can still tack on additional attributes, like
adcp.something_else = whatever
The Bunch allows access using the structure notation, and also using 
dictionary syntax, so adcp.u is the same as adcp['u']. The dictionary 
syntax is particularly useful when automating operations, because you 
can easily iterate over a list of dictionary entries.
Regarding the need to pre-allocate: yes, matlab is slicker in this 
regard, and every now and then there is discussion about implementing 
equivalent behavior in numpy, or in an add-on module.
In many cases you can simply accumulate values in a list, and then at 
the end use an array constructor to make an ndarray from the list.
You can also use the numpy concatenate function, or its derivatives, but 
this usually makes sense only for gluing together small numbers of arrays.
Eric
>
> Thanks, Jody
>
From: Jody K. <jk...@uv...> - 2012年09月09日 03:34:26
> 
> This is one of the big differences between python and matlab: in matlab, 
> if an m-file has changed within a session, the change is immediately 
> effective. The python "import" statement is very different. 
Gotchya, thanks. 
So, while I'm being a bother:
in Matlab, I often organize data in structures as:
adcp.time [1xN]
adcp.z [Mx1]
adcp.u [MxN]
where time is the x-axis, z the z-axis and u an array of values at each depth and time (an example chosen after Eric's heart). 
What is the recommended way to represent this in python? I see the info about numpy structured arrays. Is that it? It also seems that Mx1 arrays are hard in python. It also seems you need to preallocate the whole array, which isn't very flexible compared to how you can do it in Matlab. Am I missing something?
Thanks, Jody
> 
>> 
>> Sorry for the chatter, and thanks for the pointers..
>> Cheers, Jody
>> 
>> On Sep 8, 2012, at 6:18 AM, Jody Klymak <jk...@uv...
>> <mailto:jk...@uv...>> wrote:
>> 
>>> Hi all,
>>> 
>>> Thats what I thought too:
>>> 
>>> I have: jmkfigure.py:
>>> 
>>> ===============
>>> from pylab import *
>>> 
>>> def jmkfigure():
>>> rc('figure',figsize=(3+3/8,8.5/2),dpi=96)
>>> rc('font',size=9);
>>> ===========
>>> 
>>> and test.py:
>>> 
>>> =========
>>> from pylab import *
>>> 
>>> from jmkfigure import *
>>> 
>>> jmkfigure()
>>> figure(1)
>>> plot([1,2,3]);
>>> 
>>> show()
>>> ==============
>>> 
>>>>>> run test.py
>>> 
>>> yields a traceback ending w/:
>>> 
>>> ===========
>>> Users/jklymak/teaching/Phy411/project/jmkfigure.py in jmkfigure()
>>> 1 from pylab import *
>>> ----> 2
>>> 3 def jmkfigure():
>>> 4 rc('figure',figsize=(3+3/8,8.5/2),dpi=96)
>>> 5 rc('font',size=9);
>>> 
>>> NameError: global name 'rc' is not defined
>>> ========
>>> 
>>> Same error if I just import "rc" from matplot lib....
>>> 
>>> Is it some strange set up problem? If I put the same def in test.py
>>> it works fine...
>>> 
>>> Thanks, Jody
>>> 
>>> On Sep 7, 2012, at 22:52 PM, Paul Tremblay <pau...@gm...
>>> <mailto:pau...@gm...>> wrote:
>>> 
>>>> in your jmkfile.py you should have
>>>> 
>>>> from pylab import *
>>>> 
>>>> Paul
>>>> 
>>>> 
>>>> On 9/8/12 12:45 AM, Jody Klymak wrote:
>>>>> Hi All,
>>>>> 
>>>>> Sorry to ask a dumb python newbie question, but the problem arose while reading the matplotlib documentation, and an hour or so on the internet didnt' help, so I felt it was fair-ish game to post here.
>>>>> 
>>>>> Inhttp://matplotlib.sourceforge.net/examples/pylab_examples/customize_rc.html it says:
>>>>> """
>>>>> If you like to work interactively, and need to create different sets
>>>>> of defaults for figures (eg one set of defaults for publication, one
>>>>> set for interactive exploration), you may want to define some
>>>>> functions in a custom module that set the defaults, eg
>>>>> 
>>>>> def set_pub():
>>>>> rc('font', weight='bold') # bold fonts are easier to see
>>>>> 
>>>>> Then as you are working interactively, you just need to do
>>>>> 
>>>>>>>> set_pub()
>>>>> """
>>>>> 
>>>>> Which I thought was great, because I'd like to have some presets for different journals. However, saving the def into a file (jmkfigure.py) and calling
>>>>> 
>>>>> from jmkfigure import *
>>>>> 
>>>>> set_pub()
>>>>> 
>>>>> yields the error: "NameError: global name 'rc' is not defined"
>>>>> 
>>>>> I tried importing matplotlib and rc into jmkfigure.py, but to no avail.
>>>>> 
>>>>> I appreciate this is a scoping issue with python, but I can't figure out how to set rc from within an external module.
>>>>> 
>>>>> Thanks for any help,
>>>>> 
>>>>> Cheers, Jody
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>> 
>>>> ------------------------------------------------------------------------------
>>>> Live Security Virtual Conference
>>>> Exclusive live event will cover all the ways today's security and
>>>> threat landscape has changed and how IT managers can respond.
>>>> Discussions
>>>> will include endpoint security, mobile security and the latest in
>>>> malware
>>>> threats.
>>>> http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/_______________________________________________
>>>> Matplotlib-users mailing list
>>>> Mat...@li...
>>>> <mailto:Mat...@li...>
>>>> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
>>> 
>>> --
>>> Jody Klymak
>>> http://web.uvic.ca/~jklymak/
>>> 
>>> 
>>> 
>>> 
>>> ------------------------------------------------------------------------------
>>> Live Security Virtual Conference
>>> Exclusive live event will cover all the ways today's security and
>>> threat landscape has changed and how IT managers can respond. Discussions
>>> will include endpoint security, mobile security and the latest in malware
>>> threats.
>>> http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/_______________________________________________
>>> Matplotlib-users mailing list
>>> Mat...@li...
>>> <mailto:Mat...@li...>
>>> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
>> 
>> --
>> Jody Klymak
>> http://web.uvic.ca/~jklymak/
>> 
>> 
>> 
>> 
>> 
>> 
>> ------------------------------------------------------------------------------
>> Live Security Virtual Conference
>> Exclusive live event will cover all the ways today's security and
>> threat landscape has changed and how IT managers can respond. Discussions
>> will include endpoint security, mobile security and the latest in malware
>> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
>> 
>> 
>> 
>> _______________________________________________
>> Matplotlib-users mailing list
>> Mat...@li...
>> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
>> 
> 
> 
> ------------------------------------------------------------------------------
> Live Security Virtual Conference
> Exclusive live event will cover all the ways today's security and 
> threat landscape has changed and how IT managers can respond. Discussions 
> will include endpoint security, mobile security and the latest in malware 
> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
> _______________________________________________
> Matplotlib-users mailing list
> Mat...@li...
> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
--
Jody Klymak 
http://web.uvic.ca/~jklymak/

Showing 7 results of 7

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 によって変換されたページ (->オリジナル) /