SourceForge logo
SourceForge logo
Menu

matplotlib-devel

From: Darren D. <dd...@co...> - 2006年02月09日 16:15:20
I just want to double check before I commit this. We offer a font.size rc 
setting, and users can modify that size by setting fontsize='medium' or 
'large', etc. However, font.size does not globally set the default font size, 
to axis labels, ticklabels, etc, they remain 12pt as default. Should this be 
changed? If so, the change is simple:
from this:
 def __init__(self, size=12.0, weight='normal'):
to this:
 def __init__(self, size=rcParams['font.size'], weight='normal'):
Darren
From: John H. <jdh...@ac...> - 2006年02月09日 16:33:15
>>>>> "Darren" == Darren Dale <dd...@co...> writes:
 Darren> I just want to double check before I commit this. We offer
 Darren> a font.size rc setting, and users can modify that size by
 Darren> setting fontsize='medium' or 'large', etc. However,
 Darren> font.size does not globally set the default font size, to
 Darren> axis labels, ticklabels, etc, they remain 12pt as
 Darren> default. Should this be changed? If so, the change is
 Darren> simple: from this: def __init__(self, size=12.0,
 Darren> weight='normal'): to this: def __init__(self,
 Darren> size=rcParams['font.size'], weight='normal'):
If you want to use rc defaults for kwargs, you do not want to use them
in the function definition, because then they will be set a module
load time and the defaults cannot be changed dynamically. Rather, you
want to use this idiom (eg lines.py)
 def __init__(self, xdata, ydata,
 linewidth = None, # all Nones default to rc
 ...):
 if linewidth is None : linewidth=rcParams['lines.linewidth']
Then if the user changes the rc param value, the constructor default
changes too.
JDH
From: Darren D. <dd...@co...> - 2006年02月09日 16:53:48
On Thursday 09 February 2006 11:22, you wrote:
> >>>>> "Darren" == Darren Dale <dd...@co...> writes:
>
> Darren> I just want to double check before I commit this. We offer
> Darren> a font.size rc setting, and users can modify that size by
> Darren> setting fontsize='medium' or 'large', etc. However,
> Darren> font.size does not globally set the default font size, to
> Darren> axis labels, ticklabels, etc, they remain 12pt as
> Darren> default. Should this be changed? If so, the change is
> Darren> simple: from this: def __init__(self, size=12.0,
> Darren> weight='normal'): to this: def __init__(self,
> Darren> size=rcParams['font.size'], weight='normal'):
>
> If you want to use rc defaults for kwargs, you do not want to use them
> in the function definition, because then they will be set a module
> load time and the defaults cannot be changed dynamically. Rather, you
> want to use this idiom (eg lines.py)
>
>
> def __init__(self, xdata, ydata,
> linewidth = None, # all Nones default to rc
> ...):
> if linewidth is None : linewidth=rcParams['lines.linewidth']
>
> Then if the user changes the rc param value, the constructor default
> changes too.
Ok. So currently a user can put font.size:23.0, or font.size:medium or even 
"large". The latter makes things very confusing, because who knows what the 
reference point is? (Its 12, but its not clear.)
I propose the following change: font.defaultsize demands a point size, and 
then allow the relative font sizes to scale that size. Also, add a 
text.fontsize rc parameter to allow such scaling for text (this is what 
font.size does now, I think). 
Are these changes ok, or should I just leave everything alone? 
Darren
From: Darren D. <dd...@co...> - 2006年02月09日 16:58:53
On Thursday 09 February 2006 11:31, you wrote:
> I think there should be some global variable that makes it easy to
> scale all the fonts, but how to do that and still give the user fine
> control is challenging. There are 4 or 5 places where I have changed
> the default font size for tickmarks, legend entries, etc. I have some
> set at 18 pt, some at 16, and some at 14. I don't know if there is an
> easy way to do all of this and make it possible to shift everything my
> adjusting one setting. Does it make sense to allow the user to set
> offset values - so that legend font is main-4 and tickmarks are
> main-2?
This is what I am trying to accomplish, using the existing scaling framework. 
Rather than "main + or - X", it multiplies main by one of the following:
{'xx-small': 0.579, 'x-small': 0.694, 'small': 0.833,
 'medium': 1.0, 'large': 1.200, 'x-large': 1.440,
 'xx-large': 1.728}
Darren
From: Ryan K. <rya...@gm...> - 2006年02月09日 17:03:36
Sounds good to me. I guess when this is done I need an example rc
file and a little info on how it should work.
On 2/9/06, Darren Dale <dd...@co...> wrote:
> On Thursday 09 February 2006 11:31, you wrote:
> > I think there should be some global variable that makes it easy to
> > scale all the fonts, but how to do that and still give the user fine
> > control is challenging. There are 4 or 5 places where I have changed
> > the default font size for tickmarks, legend entries, etc. I have some
> > set at 18 pt, some at 16, and some at 14. I don't know if there is an
> > easy way to do all of this and make it possible to shift everything my
> > adjusting one setting. Does it make sense to allow the user to set
> > offset values - so that legend font is main-4 and tickmarks are
> > main-2?
>
> This is what I am trying to accomplish, using the existing scaling framew=
ork.
> Rather than "main + or - X", it multiplies main by one of the following:
>
> {'xx-small': 0.579, 'x-small': 0.694, 'small': 0.833,
> 'medium': 1.0, 'large': 1.200, 'x-large': 1.440,
> 'xx-large': 1.728}
>
> Darren
>
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 によって変換されたページ (->オリジナル) /