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




Showing results of 285

<< < 1 2 3 4 5 6 .. 12 > >> (Page 4 of 12)
From: Benjamin R. <ben...@ou...> - 2012年07月24日 19:38:12
On Tue, Jul 24, 2012 at 10:52 AM, Sami Niemi <s....@uc...> wrote:
> Thanks Ben for your explanation. I have filed a feature request:
> https://github.com/matplotlib/matplotlib/issues/1037
>
>
> Cheers,
> Sami
>
>
Sami,
I did take a quick peek at the code to assess how much effort it would take
to make it work properly. It isn't trivial, to say the least, because the
user-supplied rotation value is overwritten in order to do the 3d-managed
rotation. This is actually similar to another problem where user-supplied
colors to scatter plots would be over-written as one interacts with the
plot.
I have a possible quickfix in mind, but I have to test it out, and I
already know of some edge cases where it won't work. But it might be
sufficient for most use-cases.
Cheers!
Ben Root
From: Luciano F. <l_...@ya...> - 2012年07月24日 17:27:01
Still not working. The output looks like this:
File "NotasFaltasdoisgraficos.py", line 58
  ax3.axvspan(*mdates.datestr2num(['05/18/2012', '06/30/2012']), facecolor='g', alpha=0.5)
                                                              ^
SyntaxError: invalid syntax
When you say "...change the months to short English form" you mean in the data file?
That is, Abr -> Apr, Mai -> May??? ...still did not work.
________________________________
 From: Phil Elson <pel...@gm...>
To: Luciano Fleischfresser <lf...@ut...> 
Cc: "Mat...@li..." <Mat...@li...> 
Sent: Monday, July 23, 2012 5:45 PM
Subject: Re: [Matplotlib-users] axvspan with dates on x-axis
 
Looks like your very close.
I needed to change the months to short English form, change the line
 ax3.grid('True') to ax3.grid(True)
and add the line
 ax3.axvspan(*mdates.datestr2num(['05/18/2012', '06/30/2012']),
facecolor='g', alpha=0.5)
To get the box on the lower plot.
Hope that helps,
On 23 July 2012 20:42, Luciano Fleischfresser <l_...@ya...> wrote:
> I want to place a colored vertical range on my plot and came across the
> following example:
>
> http://stackoverflow.com/questions/8270981/in-a-matplotlib-plot-can-i-highlight-specific-x-value-ranges/8271438#8271438
>
> It shows what I am trying to do using axvspan.
> However, I was not able to reproduce the second plot with dates.
> Errors like 'invalid syntax' for color='red' and others prevented me from
> reproducing the plot.
> The demo from Matplotlib gallery worked fine for me. My plot also has dates
> on the x-axis.
>
> I am attaching code and data file. Hope someone can point me in the right
> direction.
>
> L Fleischfresser
>
> ------------------------------------------------------------------------------
> 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 
From: Sami N. <s....@uc...> - 2012年07月24日 14:52:43
Thanks Ben for your explanation. I have filed a feature request:
https://github.com/matplotlib/matplotlib/issues/1037
Cheers,
Sami
On 24 Jul 2012, at 15:39, Benjamin Root wrote:
> On Tue, Jul 24, 2012 at 10:10 AM, Sami Niemi <s....@uc...> wrote:
> Hi,
> 
> I have not managed to rotate the axes label text when generating a 3D plot, while in 2D everything works just fine. Here's a short snippet to demonstrate:
> 
> import matplotlib.pyplot as plt
> from mpl_toolkits.mplot3d import Axes3D
> 
> fig = plt.figure()
> ax = fig.add_subplot(111, projection='3d')
> 
> ax.set_zlabel('label text flipped', rotation=45)
> 
> ax.azim = 225
> 
> plt.show()
> 
> 
> Because mplot3d has to managed the rotation of the axes label text itself, it over-rides any user-specified rotations. I guess it is feasible to apply a rotation on top of the internal rotation. Could you file a feature request on github for this?
> 
> Cheers!
> Ben Root
> 
From: Benjamin R. <ben...@ou...> - 2012年07月24日 14:40:26
On Tue, Jul 24, 2012 at 10:10 AM, Sami Niemi <s....@uc...> wrote:
> Hi,
>
> I have not managed to rotate the axes label text when generating a 3D
> plot, while in 2D everything works just fine. Here's a short snippet to
> demonstrate:
>
> import matplotlib.pyplot as plt
> from mpl_toolkits.mplot3d import Axes3D
>
> fig = plt.figure()
> ax = fig.add_subplot(111, projection='3d')
>
> ax.set_zlabel('label text flipped', rotation=45)
>
> ax.azim = 225
>
> plt.show()
>
>
Because mplot3d has to managed the rotation of the axes label text itself,
it over-rides any user-specified rotations. I guess it is feasible to
apply a rotation on top of the internal rotation. Could you file a feature
request on github for this?
Cheers!
Ben Root
From: Sami N. <s....@uc...> - 2012年07月24日 14:30:20
Hi, 
I have not managed to rotate the axes label text when generating a 3D plot, while in 2D everything works just fine. Here's a short snippet to demonstrate:
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.set_zlabel('label text flipped', rotation=45)
ax.azim = 225
plt.show()
I've tried other commands like:
ax.w_zaxis.set_label_text(r'$\left ( \frac{R}{R_{ref}} \right )^{2}$', rotation='vertical')
without success. I would prefer not to use a solution like "pathpatch3d_demo.py" because then I need to find the location separately. Any suggestions?
Cheers,
Sami
From: Phil E. <pel...@gm...> - 2012年07月23日 20:45:31
Looks like your very close.
I needed to change the months to short English form, change the line
 ax3.grid('True') to ax3.grid(True)
and add the line
 ax3.axvspan(*mdates.datestr2num(['05/18/2012', '06/30/2012']),
facecolor='g', alpha=0.5)
To get the box on the lower plot.
Hope that helps,
On 23 July 2012 20:42, Luciano Fleischfresser <l_...@ya...> wrote:
> I want to place a colored vertical range on my plot and came across the
> following example:
>
> http://stackoverflow.com/questions/8270981/in-a-matplotlib-plot-can-i-highlight-specific-x-value-ranges/8271438#8271438
>
> It shows what I am trying to do using axvspan.
> However, I was not able to reproduce the second plot with dates.
> Errors like 'invalid syntax' for color='red' and others prevented me from
> reproducing the plot.
> The demo from Matplotlib gallery worked fine for me. My plot also has dates
> on the x-axis.
>
> I am attaching code and data file. Hope someone can point me in the right
> direction.
>
> L Fleischfresser
>
> ------------------------------------------------------------------------------
> 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
>
From: Luciano F. <l_...@ya...> - 2012年07月23日 19:42:18
I want to place a colored vertical range on my plot and came across the following example: 
http://stackoverflow.com/questions/8270981/in-a-matplotlib-plot-can-i-highlight-specific-x-value-ranges/8271438#8271438
It shows what I am trying to do using axvspan. 
However, I was not able to reproduce the second plot with dates. 
Errors like 'invalid syntax' for color='red' and others prevented me from reproducing the plot.
The demo from Matplotlib gallery worked fine for me. My plot also has dates on the x-axis.
I am attaching code and data file. Hope someone can point me in the right direction.
L Fleischfresser
From: Jonathan S. <js...@cf...> - 2012年07月23日 12:57:00
You might want to look at the python textwrap module. That can take
your labels and automatically wrap them at a certain column width. See
(in addition to the official python docs)
http://www.doughellmann.com/PyMOTW/textwrap/
Jon
On Fri, 2012年07月20日 at 23:55 -0400, C M wrote:
> How possible would it be to wrap y axis tick labels after a certain
> text length? I have a horizontal bar plot where some bars' labels are
> too long and therefore cut off. I can scrunch the width of the whole
> plot to accommodate them, but I'd much rather wrap long text and allow
> a little more space to accommodate two lines. For examples:
> 
> I'd like to go from this:
> 
> a short axis label | ======================
> 
> A very long axis label that gets cut off | =============
> 
> 
> To this:
> a short axis label | ======================
> 
> A very long axis label | =============
> that gets cut off
> 
> 
> Is this possible or has it ever been done?
> 
> Thanks,
> Che
> 
> 
-- 
______________________________________________________________
Jonathan D. Slavin Harvard-Smithsonian CfA
js...@cf... 60 Garden Street, MS 83
phone: (617) 496-7981 Cambridge, MA 02138-1516
 cell: (781) 363-0035 USA
______________________________________________________________
From: Mark L. <bre...@ya...> - 2012年07月23日 09:43:29
On 23/07/2012 03:01, JonBL wrote:
>
> Using FuncFormatter with my conversion procedure has solved my problem. I did
> not use the Python datetime module to generate the tickmark labels as some
> of your examples suggested. Instead, my conversion procedure pulls the
> required formatted date string for an x-axis ticklabel date serial number
> from an Oracle database which is the source of my plotted data.
>
> This approach has also answered another question I had in mind - how do I
> get the x= co-ordinate displayed at the bottom of the figure, to report the
> formatted date rather than its serial number.
>
> I also had a response from Phil Elson who suggested using using
> FuncFormatter as well. Many thanks to both of you for your timely responses
> to my query.
>
> Regards,
> Jon
Brilliant :) I was just about to ask how to do this!!!
>
> Benjamin Root-2 wrote:
>>
>> On Sat, Jul 21, 2012 at 10:27 PM, JonBL <jc....@bi...> wrote:
>>
>>>
>>> I have a line plot where the x-axis values are numbers, with displayed
>>> tick
>>> mark values of 0, 100, 200 ... 500 - a total of 6 tick marks. These
>>> values
>>> represent the number of days since a certain date. I have a function
>>> which
>>> converts a number such as 100, to date string '23-Jun-11', which I want
>>> to
>>> display as the x-axis label instead of 100.
>>>
>>> Following the pypib example xaxis_props.py, and printing dir(label) for
>>> each
>>> label in the x-axis tick labels, I can see that a label object supports a
>>> number of methods that might assist in changing the text of tick mark
>>> labels. I was hoping to use the get_text() method to retrieve the label's
>>> text (eg, 100), transform this to a date string by my function, and then
>>> use
>>> the set_text() method to re-assign the displayed label.
>>>
>>> This approach does not work for me. The get_text() method returns a
>>> zero-length string (not None) for each label, and the set_text() method
>>> does
>>> not change the displayed tick mark values. But I can use the set_color()
>>> method to change the colour of displayed values as per example
>>> xaxis_props.py.
>>>
>>> Any suggestions on how to change the text of displayed x-axis tick marks?
>>>
>>> TIA,
>>> Jon
>>>
>>
>> Without example code, it would be difficult to determine what you are
>> doing
>> incorrectly. That being said, there is an easier solution. If you know
>> the start date, do the following:
>>
>> from datetime import datetime, timedelta
>> startdate = datetime.strptime(datestr, "%d-%m-%y) # you need to look up
>> the format character for named months.
>>
>> xdates = np.array([startdate + timedelta(days=i) for i in xrange(501)])
>> y = np.random.random(xdates.shape)
>>
>> plt.plot(xdates, y) # This should work, but plot_date() definitely will
>> work.
>>
>> Matplotlib recognizes the python datetime object and should format it for
>> you. You can even control the formatting. See the following examples:
>> http://matplotlib.sourceforge.net/examples/pylab_examples/date_demo_convert.html?highlight=datetime%20codex
>> http://matplotlib.sourceforge.net/examples/pylab_examples/date_demo2.html?highlight=datetime%20codex
>> http://matplotlib.sourceforge.net/examples/api/date_demo.html?highlight=datetime%20codex
>> http://matplotlib.sourceforge.net/examples/pylab_examples/date_demo1.html?highlight=datetime%20codex
>>
>>
>> I hope this helps!
>> Ben Root
>>
>> ------------------------------------------------------------------------------
>> 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
>>
>>
>
-- 
Cheers.
Mark Lawrence.
From: Damon M. <dam...@gm...> - 2012年07月23日 08:59:39
On Mon, Jul 23, 2012 at 05:50:41AM +0200, klo uo wrote:
> Thanks for your reply Ben,
> 
> 
> On Sun, Jul 22, 2012 at 4:39 PM, Benjamin Root wrote:
> > As for the assertion that HTML colors aren't used, that is incorrect. The
> > named colors follow the HTML list. Here is our list:
> >
> > https://github.com/matplotlib/matplotlib/blob/master/lib/matplotlib/colors.py#L62
> >
> > and here is the html list:
> >
> > http://html-color-codes.info/color-names/
> 
> sure that's correct, I just meant about default defined colors with
> abbrev color names, like 'y' (#BFBF00) in not 'yellow' (#FFFF00) etc.
>
Are you saying the following two examples
ax.plot(x, y, 'yellow')
ax.plot(x, y, 'y')
produce different coloured lines? Or are you saying yellow should always
be #FFFF00?
> 
> ------------------------------------------------------------------------------
> 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
-- 
Damon McDougall
http://damon-is-a-geek.com
B2.39
Mathematics Institute
University of Warwick
Coventry
West Midlands
CV4 7AL
United Kingdom
From: Phil E. <pel...@gm...> - 2012年07月23日 08:06:11
Ah, sorry, forgot to reply to all. Please see the solution I provided to Jon.
---------- Forwarded message ----------
Date: 22 July 2012 15:08
Subject: Re: [Matplotlib-users] How to Change Axis Tick Mark Labels
Sounds like you want to use a FunctionFormatter rather than modifying
the ticks themselves. There is an example here
(http://stackoverflow.com/questions/8271564/matplotlib-comma-separated-number-format-for-axis).
Essentially:
import matplotlib.pyplot as plt
import matplotlib.ticker as mticker
def square_braces(tick_val, tick_pos):
 """Put square braces around the given tick_val """
 return '<%s>' % tick_val
ax = plt.axes()
plt(range(10))
ax.yaxis.set_major_formatter(mticker.FuncFormatter(func))
plt.show()
HTH,
From: klo uo <kl...@gm...> - 2012年07月23日 03:50:48
Thanks for your reply Ben,
On Sun, Jul 22, 2012 at 4:39 PM, Benjamin Root wrote:
> As for the assertion that HTML colors aren't used, that is incorrect. The
> named colors follow the HTML list. Here is our list:
>
> https://github.com/matplotlib/matplotlib/blob/master/lib/matplotlib/colors.py#L62
>
> and here is the html list:
>
> http://html-color-codes.info/color-names/
sure that's correct, I just meant about default defined colors with
abbrev color names, like 'y' (#BFBF00) in not 'yellow' (#FFFF00) etc.
From: JonBL <jc....@bi...> - 2012年07月23日 02:01:33
Using FuncFormatter with my conversion procedure has solved my problem. I did
not use the Python datetime module to generate the tickmark labels as some
of your examples suggested. Instead, my conversion procedure pulls the
required formatted date string for an x-axis ticklabel date serial number
from an Oracle database which is the source of my plotted data.
This approach has also answered another question I had in mind - how do I
get the x= co-ordinate displayed at the bottom of the figure, to report the
formatted date rather than its serial number. 
I also had a response from Phil Elson who suggested using using
FuncFormatter as well. Many thanks to both of you for your timely responses
to my query.
Regards,
 Jon
Benjamin Root-2 wrote:
> 
> On Sat, Jul 21, 2012 at 10:27 PM, JonBL <jc....@bi...> wrote:
> 
>>
>> I have a line plot where the x-axis values are numbers, with displayed
>> tick
>> mark values of 0, 100, 200 ... 500 - a total of 6 tick marks. These
>> values
>> represent the number of days since a certain date. I have a function
>> which
>> converts a number such as 100, to date string '23-Jun-11', which I want
>> to
>> display as the x-axis label instead of 100.
>>
>> Following the pypib example xaxis_props.py, and printing dir(label) for
>> each
>> label in the x-axis tick labels, I can see that a label object supports a
>> number of methods that might assist in changing the text of tick mark
>> labels. I was hoping to use the get_text() method to retrieve the label's
>> text (eg, 100), transform this to a date string by my function, and then
>> use
>> the set_text() method to re-assign the displayed label.
>>
>> This approach does not work for me. The get_text() method returns a
>> zero-length string (not None) for each label, and the set_text() method
>> does
>> not change the displayed tick mark values. But I can use the set_color()
>> method to change the colour of displayed values as per example
>> xaxis_props.py.
>>
>> Any suggestions on how to change the text of displayed x-axis tick marks?
>>
>> TIA,
>> Jon
>>
> 
> Without example code, it would be difficult to determine what you are
> doing
> incorrectly. That being said, there is an easier solution. If you know
> the start date, do the following:
> 
> from datetime import datetime, timedelta
> startdate = datetime.strptime(datestr, "%d-%m-%y) # you need to look up
> the format character for named months.
> 
> xdates = np.array([startdate + timedelta(days=i) for i in xrange(501)])
> y = np.random.random(xdates.shape)
> 
> plt.plot(xdates, y) # This should work, but plot_date() definitely will
> work.
> 
> Matplotlib recognizes the python datetime object and should format it for
> you. You can even control the formatting. See the following examples:
> http://matplotlib.sourceforge.net/examples/pylab_examples/date_demo_convert.html?highlight=datetime%20codex
> http://matplotlib.sourceforge.net/examples/pylab_examples/date_demo2.html?highlight=datetime%20codex
> http://matplotlib.sourceforge.net/examples/api/date_demo.html?highlight=datetime%20codex
> http://matplotlib.sourceforge.net/examples/pylab_examples/date_demo1.html?highlight=datetime%20codex
> 
> 
> I hope this helps!
> Ben Root
> 
> ------------------------------------------------------------------------------
> 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
> 
> 
-- 
View this message in context: http://old.nabble.com/How-to-Change-Axis-Tick-Mark-Labels-tp34195324p34197999.html
Sent from the matplotlib - users mailing list archive at Nabble.com.
From: Benjamin R. <ben...@ou...> - 2012年07月22日 14:57:59
On Sat, Jul 21, 2012 at 10:27 PM, JonBL <jc....@bi...> wrote:
>
> I have a line plot where the x-axis values are numbers, with displayed tick
> mark values of 0, 100, 200 ... 500 - a total of 6 tick marks. These values
> represent the number of days since a certain date. I have a function which
> converts a number such as 100, to date string '23-Jun-11', which I want to
> display as the x-axis label instead of 100.
>
> Following the pypib example xaxis_props.py, and printing dir(label) for
> each
> label in the x-axis tick labels, I can see that a label object supports a
> number of methods that might assist in changing the text of tick mark
> labels. I was hoping to use the get_text() method to retrieve the label's
> text (eg, 100), transform this to a date string by my function, and then
> use
> the set_text() method to re-assign the displayed label.
>
> This approach does not work for me. The get_text() method returns a
> zero-length string (not None) for each label, and the set_text() method
> does
> not change the displayed tick mark values. But I can use the set_color()
> method to change the colour of displayed values as per example
> xaxis_props.py.
>
> Any suggestions on how to change the text of displayed x-axis tick marks?
>
> TIA,
> Jon
>
Without example code, it would be difficult to determine what you are doing
incorrectly. That being said, there is an easier solution. If you know
the start date, do the following:
from datetime import datetime, timedelta
startdate = datetime.strptime(datestr, "%d-%m-%y) # you need to look up
the format character for named months.
xdates = np.array([startdate + timedelta(days=i) for i in xrange(501)])
y = np.random.random(xdates.shape)
plt.plot(xdates, y) # This should work, but plot_date() definitely will
work.
Matplotlib recognizes the python datetime object and should format it for
you. You can even control the formatting. See the following examples:
http://matplotlib.sourceforge.net/examples/pylab_examples/date_demo_convert.html?highlight=datetime%20codex
http://matplotlib.sourceforge.net/examples/pylab_examples/date_demo2.html?highlight=datetime%20codex
http://matplotlib.sourceforge.net/examples/api/date_demo.html?highlight=datetime%20codex
http://matplotlib.sourceforge.net/examples/pylab_examples/date_demo1.html?highlight=datetime%20codex
I hope this helps!
Ben Root
From: Benjamin R. <ben...@ou...> - 2012年07月22日 14:39:48
On Sat, Jul 21, 2012 at 1:21 PM, klo uo <kl...@gm...> wrote:
> Hi,
>
> I read previous mail about "colormaps" which reminded me to a question
> I had about MPL colors.
> Colors in MPL plots are dark, and pale, and not is some specific color
> theme but it's just pale dark.
> I thought that usually people make plots brighter (as more attractive ;) )
>
>
The default color cycle chosen is the same as many of the other popular
plotting tools, however, we provide the mechanism to define your own
cycles. Admittedly, this isn't quite as good as I would like it, but that
is the rationale for the chosen default.
> If you can, have a look at this plot I just made, and same image with
> same named colors as set by CorelDraw for example:
> http://i.imgur.com/y29xD.png
>
> As you all probably know cyan is not cyan but teal, and green is with
> 50% green, and every color is not as expected, except red and blue.
> I don't know much about color systems and color space, so thought to
> ask why is it like this and if colors can be somehow differently
> defined at user end?
>
>
If you import matplotlib.colors, you can modify the "cnames" dictionary
like so:
import matplotlib.colors as mcolors
mcolors.cnames['cyan'] = mcolors.cnames['teal']
mcolors.cnames['green'] = '#00FF00'
As for using a CMYK system, the idea has been floated before and I
certainly would not be adverse to it. But for backwards compatibility, we
would have to continue to support the RGB system. There has been talk
about reworking the way colors are handled in matplotlib to use class
objects in order to unify the myriad of ways that colors can be specified
by the users. Such a scheme would make the simultaneous use of CMYK and
RGB possible if they are both derived from a common base-class.
As for the assertion that HTML colors aren't used, that is incorrect. The
named colors follow the HTML list. Here is our list:
https://github.com/matplotlib/matplotlib/blob/master/lib/matplotlib/colors.py#L62
and here is the html list:
http://html-color-codes.info/color-names/
Cheers!
Ben Root
From: JonBL <jc....@bi...> - 2012年07月22日 02:27:19
I have a line plot where the x-axis values are numbers, with displayed tick
mark values of 0, 100, 200 ... 500 - a total of 6 tick marks. These values
represent the number of days since a certain date. I have a function which
converts a number such as 100, to date string '23-Jun-11', which I want to
display as the x-axis label instead of 100.
Following the pypib example xaxis_props.py, and printing dir(label) for each
label in the x-axis tick labels, I can see that a label object supports a
number of methods that might assist in changing the text of tick mark
labels. I was hoping to use the get_text() method to retrieve the label's
text (eg, 100), transform this to a date string by my function, and then use
the set_text() method to re-assign the displayed label.
This approach does not work for me. The get_text() method returns a 
zero-length string (not None) for each label, and the set_text() method does
not change the displayed tick mark values. But I can use the set_color()
method to change the colour of displayed values as per example
xaxis_props.py. 
Any suggestions on how to change the text of displayed x-axis tick marks?
TIA,
 Jon
-- 
View this message in context: http://old.nabble.com/How-to-Change-Axis-Tick-Mark-Labels-tp34195324p34195324.html
Sent from the matplotlib - users mailing list archive at Nabble.com.
From: klo uo <kl...@gm...> - 2012年07月21日 20:14:42
Ah all right, thanks for the tips :)
I somehow missed that setting while browsing matplotlibrc
Cheers
On Sat, Jul 21, 2012 at 9:33 PM, Felix Patzelt wrote:
> You want this?
>
> ----
>
> import matplotlib as mpl
> mpl.rcParams['axes.color_cycle'] = ['#0000FF', '#00FF00', '#FF0000', '#00FFFF', 'FF00FF', 'FFFF00', '000000']
>
> # test it
> from pylab import *
> import matplotlib.cm as cm
>
> x = linspace(0, 2*pi, num=100, endpoint=True)
>
> for i in range(1, 10):
> plot(x, sin(x + pi*i/10.0))
>
> show()
>
> ----
>
> I still think, that this is not a sensible default choice. Btw you can also easily generate your color scheme from colormaps:
>
> mpl.rcParams['axes.color_cycle'] = [cm.winter(i/10.) for i in range(10)].
>
> There also was an example in the Mailing list for how to do this on a per-plot-basis: https://gist.github.com/3150091
From: Felix P. <fe...@ne...> - 2012年07月21日 19:33:44
You want this?
----
import matplotlib as mpl
mpl.rcParams['axes.color_cycle'] = ['#0000FF', '#00FF00', '#FF0000', '#00FFFF', 'FF00FF', 'FFFF00', '000000']
# test it
from pylab import *
import matplotlib.cm as cm
x = linspace(0, 2*pi, num=100, endpoint=True)
for i in range(1, 10):
 plot(x, sin(x + pi*i/10.0))
show()
----
I still think, that this is not a sensible default choice. Btw you can also easily generate your color scheme from colormaps: 
mpl.rcParams['axes.color_cycle'] = [cm.winter(i/10.) for i in range(10)]. 
There also was an example in the Mailing list for how to do this on a per-plot-basis: https://gist.github.com/3150091
Am 21.07.2012 um 21:00 schrieb klo uo:
> On Sat, Jul 21, 2012 at 7:37 PM, Felix Patzelt wrote:
>> Have you ever been in a talk where someone uses 100% green on a slide? The result is usually that no one can see what is shown unless it is a really large green area.
> 
> No, but I would have expected in that case appropriate bg. I've seen a
> talk by MPL developer that he dislikes systems that help too much,
> like I want it to do what I tell it to do ;)
> Like cyan is not teal, and yellow is not 75% yellow etc.
> 
> I really would have expected that MPL uses some nifty CMYK scheme (as
> in CorelDraw approxiamtion i.e.) instead the one usually defined as in
> html color names: http://www.w3schools.com/html/html_colornames.asp
> which are commonly used (gnuplot i.e.), but MPL doesn't even use that
> 
> Can this colors be defined (i.e. in matplotlibrc) w/o changing MPL source?
> 
> 
>> My guess is that this happens because rod cells which are the most light sensitive ones have very similar wavelength responsiveness to the cone cells (the ones for color vision) which react to green light. Hence, you just don't have as much contrast for green text on a white background as you have for example for blue text. Also, green on black is much easier to read than blue or red on black by the same argument.
> 
> ------------------------------------------------------------------------------
> 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
From: klo uo <kl...@gm...> - 2012年07月21日 19:00:49
On Sat, Jul 21, 2012 at 7:37 PM, Felix Patzelt wrote:
> Have you ever been in a talk where someone uses 100% green on a slide? The result is usually that no one can see what is shown unless it is a really large green area.
No, but I would have expected in that case appropriate bg. I've seen a
talk by MPL developer that he dislikes systems that help too much,
like I want it to do what I tell it to do ;)
Like cyan is not teal, and yellow is not 75% yellow etc.
I really would have expected that MPL uses some nifty CMYK scheme (as
in CorelDraw approxiamtion i.e.) instead the one usually defined as in
html color names: http://www.w3schools.com/html/html_colornames.asp
which are commonly used (gnuplot i.e.), but MPL doesn't even use that
Can this colors be defined (i.e. in matplotlibrc) w/o changing MPL source?
> My guess is that this happens because rod cells which are the most light sensitive ones have very similar wavelength responsiveness to the cone cells (the ones for color vision) which react to green light. Hence, you just don't have as much contrast for green text on a white background as you have for example for blue text. Also, green on black is much easier to read than blue or red on black by the same argument.
From: Benjamin J. <bj...@gm...> - 2012年07月21日 17:39:41
Hey guys,
thanks for your answers. Nicolas, your showcase seems to be exactly
what I'm after. To make this a little more user-friendly it would be
nice to create ones own line style from this so that it can be easily
incorporated in the plotting command, i.e. ax.plot( .... ,
linestyle=myFancyLine) .
Anyway thanks a lot for pointing out that this can be done in
matplotlib already.
Benjamin
On Mon, Jul 16, 2012 at 2:12 PM, Nicolas Rougier
<Nic...@in...> wrote:
>
>
> Here is a quick example that might help you:
>
> http://www.loria.fr/~rougier/coding/gallery/showcase/showcase-10-large.png
> http://www.loria.fr/~rougier/coding/gallery/showcase/showcase-10.py
>
>
>
> Nicolas
>
>
> On Jul 16, 2012, at 11:27 , Daπid wrote:
>
>> On Mon, Jul 16, 2012 at 11:09 AM, Benjamin Jonen <bj...@gm...> wrote:
>>> 2) The coloring and the way the lines curve around looks very nice to
>>> me. I remember that the Excel charts did not have this nice look
>>> before Excel 2007. Can I achieve similar effects with matplotlib? I'm
>>> not really sure what creates this nice look, so this question is of
>>> course a little fuzzy.
>>
>> Maybe you are thinking about the smoothness of the curves. Even you
>> have spaced points, they don't do sharp edges. In my opinion, for
>> scientific research, they shouldn't be concealed in the general case,
>> and this is, I think, the main target of MPL.
>>
>> Nevertheless, if in your case it makes sense and you want them to be
>> smooth, you can do it through SciPy, applying a interpolation scheme.
>>
>> tck=scipy.interpolate(datax, datay)
>> datax_n=np.arange(datax.min(), datax.max(), len(datax)*20)
>> datay_n=sicpy.interpolate(splev(datax_n,tck,der=0)
>>
>> And then you plot datax_n and datay_n.
>>
>> http://docs.scipy.org/doc/scipy/reference/tutorial/interpolate.html#spline-interpolation-in-1-d-procedural-interpolate-splxxx
>>
>> ------------------------------------------------------------------------------
>> 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
>
From: Felix P. <fe...@ne...> - 2012年07月21日 17:37:59
Have you ever been in a talk where someone uses 100% green on a slide? The result is usually that no one can see what is shown unless it is a really large green area. Green should be dark and not (0, 255, 0)! The same applies to cyan and yellow. Were the colors like you want them, they would be useless for lines and plot symbols. My guess is that this happens because rod cells which are the most light sensitive ones have very similar wavelength responsiveness to the cone cells (the ones for color vision) which react to green light. Hence, you just don't have as much contrast for green text on a white background as you have for example for blue text. Also, green on black is much easier to read than blue or red on black by the same argument.
Am 21.07.2012 um 19:21 schrieb klo uo:
> Hi,
> 
> I read previous mail about "colormaps" which reminded me to a question
> I had about MPL colors.
> Colors in MPL plots are dark, and pale, and not is some specific color
> theme but it's just pale dark.
> I thought that usually people make plots brighter (as more attractive ;) )
> 
> If you can, have a look at this plot I just made, and same image with
> same named colors as set by CorelDraw for example:
> http://i.imgur.com/y29xD.png
> 
> As you all probably know cyan is not cyan but teal, and green is with
> 50% green, and every color is not as expected, except red and blue.
> I don't know much about color systems and color space, so thought to
> ask why is it like this and if colors can be somehow differently
> defined at user end?
> 
> ------------------------------------------------------------------------------
> 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
From: klo uo <kl...@gm...> - 2012年07月21日 17:21:36
Hi,
I read previous mail about "colormaps" which reminded me to a question
I had about MPL colors.
Colors in MPL plots are dark, and pale, and not is some specific color
theme but it's just pale dark.
I thought that usually people make plots brighter (as more attractive ;) )
If you can, have a look at this plot I just made, and same image with
same named colors as set by CorelDraw for example:
http://i.imgur.com/y29xD.png
As you all probably know cyan is not cyan but teal, and green is with
50% green, and every color is not as expected, except red and blue.
I don't know much about color systems and color space, so thought to
ask why is it like this and if colors can be somehow differently
defined at user end?
From: Mark L. <bre...@ya...> - 2012年07月21日 11:33:31
On 21/07/2012 05:15, Benjamin Root wrote:
> On Fri, Jul 20, 2012 at 10:55 PM, C M <cmp...@gm...> wrote:
>
>> How possible would it be to wrap y axis tick labels after a certain
>> text length? I have a horizontal bar plot where some bars' labels are
>> too long and therefore cut off. I can scrunch the width of the whole
>> plot to accommodate them, but I'd much rather wrap long text and allow
>> a little more space to accommodate two lines. For examples:
>>
>> I'd like to go from this:
>>
>> a short axis label | ======================
>>
>> A very long axis label that gets cut off | =============
>>
>>
>> To this:
>> a short axis label | ======================
>>
>> A very long axis label | =============
>> that gets cut off
>>
>>
>> Is this possible or has it ever been done?
>>
>> Thanks,
>> Che
>>
>>
> Not automatically, but you can always manually break up a line of text with
> a '\n' in the string. Automatic/intelligent line wrapping has always been
> a requested feature, but would be very difficult to implement correctly.
> Therefore, the recommendation is for manual usage of newlines.
For the OP an example is here 
http://matplotlib.sourceforge.net/examples/pylab_examples/barchart_demo2.html
>
> Cheers!
> Ben Root
>
>
>
> ------------------------------------------------------------------------------
> 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
>
-- 
Cheers.
Mark Lawrence.
From: Benjamin R. <ben...@ou...> - 2012年07月21日 04:16:07
On Fri, Jul 20, 2012 at 10:55 PM, C M <cmp...@gm...> wrote:
> How possible would it be to wrap y axis tick labels after a certain
> text length? I have a horizontal bar plot where some bars' labels are
> too long and therefore cut off. I can scrunch the width of the whole
> plot to accommodate them, but I'd much rather wrap long text and allow
> a little more space to accommodate two lines. For examples:
>
> I'd like to go from this:
>
> a short axis label | ======================
>
> A very long axis label that gets cut off | =============
>
>
> To this:
> a short axis label | ======================
>
> A very long axis label | =============
> that gets cut off
>
>
> Is this possible or has it ever been done?
>
> Thanks,
> Che
>
>
Not automatically, but you can always manually break up a line of text with
a '\n' in the string. Automatic/intelligent line wrapping has always been
a requested feature, but would be very difficult to implement correctly.
Therefore, the recommendation is for manual usage of newlines.
Cheers!
Ben Root
From: C M <cmp...@gm...> - 2012年07月21日 03:55:58
How possible would it be to wrap y axis tick labels after a certain
text length? I have a horizontal bar plot where some bars' labels are
too long and therefore cut off. I can scrunch the width of the whole
plot to accommodate them, but I'd much rather wrap long text and allow
a little more space to accommodate two lines. For examples:
I'd like to go from this:
 a short axis label | ======================
A very long axis label that gets cut off | =============
To this:
 a short axis label | ======================
 A very long axis label | =============
 that gets cut off
Is this possible or has it ever been done?
Thanks,
Che
10 messages has been excluded from this view by a project administrator.

Showing results of 285

<< < 1 2 3 4 5 6 .. 12 > >> (Page 4 of 12)
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 によって変換されたページ (->オリジナル) /