SourceForge logo
SourceForge logo
Menu

matplotlib-devel — matplotlib developers

You can subscribe to this list here.

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

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



Showing 5 results of 5

From: Michael G. <mic...@gm...> - 2011年08月27日 21:16:20
Hi,
I'm trying to generate colored text on my plots, but can only seem
to get black and white. I've attached an example python scriptx
(test.py) that demonstrates the problem. This produces a plot
(test.png) with black and white text even though I've explicitly told
latex to use color, and in fact the intermediate image gets colored
correctly (attached 25a9904ac88febf5f01477f069213537.png file taken
from .matplotlib/tex.cache). I'm currently using matplotlib 0.99.3.
Thanks for any help with this issue.
Note that I'm not subscribed to this list, so please CC me on replies.
Best wishes,
Mike
From: Grahame B. <gr...@an...> - 2011年08月27日 10:45:50
On 26 August 2011 01:38, Michael Droettboom <md...@st...> wrote:
> On 08/24/2011 01:41 PM, Michael Droettboom wrote:
>> On 08/24/2011 11:07 AM, Grahame Bowland wrote:
>>
>>> Another thing - I think I've found a str/bytes bug which I can't
>>> figure it out. I've attached the code, if I run it on my machine I get
>>> this output:
>>>
>>> Traceback (most recent call last):
>>>   File "crash.py", line 24, in<module>
>>>    fig.canvas.print_figure(open('test.png', 'wb'), bbox_inches='tight')
>>>   File "/opt/shrubbery/lib/python3.2/site-packages/matplotlib/backend_bases.py",
>>> line 1951, in print_figure
>>>    bbox_inches = self.figure.get_tightbbox(renderer)
>>>   File "/opt/shrubbery/lib/python3.2/site-packages/matplotlib/figure.py",
>>> line 1292, in get_tightbbox
>>>    for ax in self.axes:
>>>   File "/opt/shrubbery/lib/python3.2/site-packages/matplotlib/figure.py",
>>> line 290, in _get_axes
>>>    return self._axstack.as_list()
>>>   File "/opt/shrubbery/lib/python3.2/site-packages/matplotlib/figure.py",
>>> line 59, in as_list
>>>    ia_list = [a for k, a in self._elements]
>>>   File "/opt/shrubbery/lib/python3.2/site-packages/matplotlib/figure.py",
>>> line 59, in<listcomp>
>>>    ia_list = [a for k, a in self._elements]
>>> TypeError: string argument expected, got 'bytes'
>>>
>>> It's definitely something to do with the bbox_inches='tight' argument,
>>> if I take that out everything works. Using the debugger I can't see
>>> anything in any stack frame that explains the traceback - really odd!
>>>
>> Can you file an issue for this in the matplotlib-py3 github project?
>> I'm busy getting the matplotlib 1.1.x release finished up at the moment,
>> and don't have a working environment for Python 3 right now. I'd hate
>> for this bug to fall through the cracks.
>>
> Indeed a confusing bug -- errors were not being returned correctly from
> the PNG extension.
>
> Can you confirm that
>
> https://github.com/matplotlib/matplotlib-py3/commit/927acf856bb321e22938846bb39f8b32d90172d4
>
> resolves the issue?
Hi Mike
Thanks very much, that solves the problem.
Cheers
Grahame
On 08/26/2011 08:21 PM, Michiel de Hoon wrote:
> Thanks! That solves the problem for me.
> Once these changes have made it into trunk, I can commit my changes to the MacOSX backend.
Done--I hit the merge button.
Eric
>
> Thanks,
> --Michiel
>
> --- On Fri, 8/26/11, Eric Firing<ef...@ha...> wrote:
>
>> From: Eric Firing<ef...@ha...>
>> Subject: Re: [matplotlib-devel] graphics context: use alpha value from foreground color if present
>> To: mat...@li...
>> Date: Friday, August 26, 2011, 10:20 PM
>> On 08/26/2011 06:23 AM, Michiel de
>> Hoon wrote:
>>> Dear all,
>>>
>>> I am currently modifying the MacOSX backend to make
>> its interactive/non-interactive behavior consistent with the
>> other backends in matplotlib.
>>> When I was testing the backend, I found a new bug that
>> seems to be related to a recent change in backend_bases.py:
>>
>> Michiel,
>>
>> Thank you for doing this work on the MacOSX backend; sorry
>> to have
>> introduced a bug that you stumbled over.
>>
>>>
>>> https://github.com/matplotlib/matplotlib/commit/4c078ddf68cc0ecc1a5f36009a3e3a8b4921b037#lib/matplotlib/backend_bases.py
>>>
>>> After this commit, GraphicsContextBase.set_alpha has
>> no effect if alpha==None; previously it would set alpha to
>> 1.0.
>>>
>>> The bug appears here in Text.draw in text.py:
>>>
>>> gc =
>> renderer.new_gc()
>>>
>> gc.set_foreground(self.get_color())
>>>
>> gc.set_alpha(self.get_alpha())
>>>
>>> In this code, self is a Text object, which derives
>> from the Artist class, which initializes its _alpha member
>> to None. So self.get_alpha() returns None, and gc.set_alpha
>> has no effect. The alpha value used then depends on whatever
>> was present in the gc before the call to new_gc, which is
>> backend-dependent; the MacOSX and cairo backends end up with
>> an incorrect alpha value.
>>>
>>> I guess the easiest solution is to initialize _alpha
>> in the Artist class to 1.0 instead of to None.
>>
>> See https://github.com/matplotlib/matplotlib/pull/437
>>
>> The problem was occurring because the macosx and cairo
>> backends were
>> recycling their graphics context objects instead of making
>> new
>> instances, so they were not getting initialized. I
>> made a local fix by
>> initializing the _alpha attributes; it may be that other
>> initialization
>> is actually needed as well, and that the
>> GraphicsContextBase.__init__
>> method should be called, but I have not looked into
>> that. The small fix
>> solves the immediate problem.
>>
>> In addition, I realized that a small change in
>> GraphicsContextBase was
>> needed to properly support backends that have their own
>> set_alpha and
>> set_foreground methods in their gc class.
>>
>> Eric
>>
>>>
>>> Thanks,
>>> --Michiel
>>
>> ------------------------------------------------------------------------------
>> EMC VNX: the world's simplest storage, starting under 10ドルK
>> The only unified storage solution that offers unified
>> management
>> Up to 160% more powerful than alternatives and 25% more
>> efficient.
>> Guaranteed. http://p.sf.net/sfu/emc-vnx-dev2dev
>> _______________________________________________
>> Matplotlib-devel mailing list
>> Mat...@li...
>> https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
>>
>
> ------------------------------------------------------------------------------
> EMC VNX: the world's simplest storage, starting under 10ドルK
> The only unified storage solution that offers unified management
> Up to 160% more powerful than alternatives and 25% more efficient.
> Guaranteed. http://p.sf.net/sfu/emc-vnx-dev2dev
> _______________________________________________
> Matplotlib-devel mailing list
> Mat...@li...
> https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
From: Michiel de H. <mjl...@ya...> - 2011年08月27日 06:21:23
Thanks! That solves the problem for me.
Once these changes have made it into trunk, I can commit my changes to the MacOSX backend.
Thanks,
--Michiel
--- On Fri, 8/26/11, Eric Firing <ef...@ha...> wrote:
> From: Eric Firing <ef...@ha...>
> Subject: Re: [matplotlib-devel] graphics context: use alpha value from foreground color if present
> To: mat...@li...
> Date: Friday, August 26, 2011, 10:20 PM
> On 08/26/2011 06:23 AM, Michiel de
> Hoon wrote:
> > Dear all,
> >
> > I am currently modifying the MacOSX backend to make
> its interactive/non-interactive behavior consistent with the
> other backends in matplotlib.
> > When I was testing the backend, I found a new bug that
> seems to be related to a recent change in backend_bases.py:
> 
> Michiel,
> 
> Thank you for doing this work on the MacOSX backend; sorry
> to have 
> introduced a bug that you stumbled over.
> 
> >
> > https://github.com/matplotlib/matplotlib/commit/4c078ddf68cc0ecc1a5f36009a3e3a8b4921b037#lib/matplotlib/backend_bases.py
> >
> > After this commit, GraphicsContextBase.set_alpha has
> no effect if alpha==None; previously it would set alpha to
> 1.0.
> >
> > The bug appears here in Text.draw in text.py:
> >
> >     gc =
> renderer.new_gc()
> >     
> gc.set_foreground(self.get_color())
> >     
> gc.set_alpha(self.get_alpha())
> >
> > In this code, self is a Text object, which derives
> from the Artist class, which initializes its _alpha member
> to None. So self.get_alpha() returns None, and gc.set_alpha
> has no effect. The alpha value used then depends on whatever
> was present in the gc before the call to new_gc, which is
> backend-dependent; the MacOSX and cairo backends end up with
> an incorrect alpha value.
> >
> > I guess the easiest solution is to initialize _alpha
> in the Artist class to 1.0 instead of to None.
> 
> See https://github.com/matplotlib/matplotlib/pull/437
> 
> The problem was occurring because the macosx and cairo
> backends were 
> recycling their graphics context objects instead of making
> new 
> instances, so they were not getting initialized. I
> made a local fix by 
> initializing the _alpha attributes; it may be that other
> initialization 
> is actually needed as well, and that the
> GraphicsContextBase.__init__ 
> method should be called, but I have not looked into
> that. The small fix 
> solves the immediate problem.
> 
> In addition, I realized that a small change in
> GraphicsContextBase was 
> needed to properly support backends that have their own
> set_alpha and 
> set_foreground methods in their gc class.
> 
> Eric
> 
> >
> > Thanks,
> > --Michiel
> 
> ------------------------------------------------------------------------------
> EMC VNX: the world's simplest storage, starting under 10ドルK
> The only unified storage solution that offers unified
> management 
> Up to 160% more powerful than alternatives and 25% more
> efficient. 
> Guaranteed. http://p.sf.net/sfu/emc-vnx-dev2dev
> _______________________________________________
> Matplotlib-devel mailing list
> Mat...@li...
> https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
> 
On 08/26/2011 06:23 AM, Michiel de Hoon wrote:
> Dear all,
>
> I am currently modifying the MacOSX backend to make its interactive/non-interactive behavior consistent with the other backends in matplotlib.
> When I was testing the backend, I found a new bug that seems to be related to a recent change in backend_bases.py:
Michiel,
Thank you for doing this work on the MacOSX backend; sorry to have 
introduced a bug that you stumbled over.
>
> https://github.com/matplotlib/matplotlib/commit/4c078ddf68cc0ecc1a5f36009a3e3a8b4921b037#lib/matplotlib/backend_bases.py
>
> After this commit, GraphicsContextBase.set_alpha has no effect if alpha==None; previously it would set alpha to 1.0.
>
> The bug appears here in Text.draw in text.py:
>
> gc = renderer.new_gc()
> gc.set_foreground(self.get_color())
> gc.set_alpha(self.get_alpha())
>
> In this code, self is a Text object, which derives from the Artist class, which initializes its _alpha member to None. So self.get_alpha() returns None, and gc.set_alpha has no effect. The alpha value used then depends on whatever was present in the gc before the call to new_gc, which is backend-dependent; the MacOSX and cairo backends end up with an incorrect alpha value.
>
> I guess the easiest solution is to initialize _alpha in the Artist class to 1.0 instead of to None.
See https://github.com/matplotlib/matplotlib/pull/437
The problem was occurring because the macosx and cairo backends were 
recycling their graphics context objects instead of making new 
instances, so they were not getting initialized. I made a local fix by 
initializing the _alpha attributes; it may be that other initialization 
is actually needed as well, and that the GraphicsContextBase.__init__ 
method should be called, but I have not looked into that. The small fix 
solves the immediate problem.
In addition, I realized that a small change in GraphicsContextBase was 
needed to properly support backends that have their own set_alpha and 
set_foreground methods in their gc class.
Eric
>
> Thanks,
> --Michiel

Showing 5 results of 5

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