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


Showing 3 results of 3

From: Robert C. <cim...@nt...> - 2008年07月04日 08:14:31
Eric Firing wrote:
> I'm not sure if this is addressing your situation, but the simplest way 
> to adjust all font sizes is to use the rcParams dictionary, either 
> directly or via the matplotlibrc file. If the default font sizes for 
> various items are specified using "medium", "large", etc, instead of 
> with numerical values in points, then everything can be scaled by 
> changing the single value, font.size, which is the point size 
> corresponding to "medium".
Yes, this certainly works, but only for future plots, no? Or it works
also if a figure already exists and I want to play with the sizes to get
something that looks nice?
r.
From: Eric F. <ef...@ha...> - 2008年07月04日 07:50:48
Robert Cimrman wrote:
[...]
> 
> Great! I used to write many such functions for setting font sizes of all
> elements in a figure. But speaking about the font sizes, one usually 
> wants the title to be in larger font then the axis labels etc. How could 
> something like this be implemented within your general findobj()?
> 
> Just for the reference, this is how I did it:
> def setAxesFontSize( ax, size, titleMul = 1.2, labelMul = 1.0 ):
> """size : tick label size,
> titleMul: title label size multiplicator,
> labelMul: x, y axis label size multiplicator"""
> labels = ax.get_xticklabels() + ax.get_yticklabels()
> for label in labels:
> label.set_size( size )
> 
> labels = [ax.get_xaxis().get_label(), ax.get_yaxis().get_label()]
> for label in labels:
> label.set_size( labelMul * size )
> 
> for child in ax.get_children():
> if isinstance( child, pylab.Text ):
> child.set_size( titleMul * size )
> 
> Maybe it could be implemented in the sense of:
> 
> def myfontsizes( x ):
> """Depending on class of x, return also suggested value of the font 
> 
> size."""
> 
> for o, size in fig.findobj( myfontsizes, suggest_value = True ):
> o.set_size( size )
> 
> # Default for suggest_value is False...
> for o in fig.findobj(text.Text):
> o.set_fontstyle('italic')
> 
> What do you think?
I'm not sure if this is addressing your situation, but the simplest way 
to adjust all font sizes is to use the rcParams dictionary, either 
directly or via the matplotlibrc file. If the default font sizes for 
various items are specified using "medium", "large", etc, instead of 
with numerical values in points, then everything can be scaled by 
changing the single value, font.size, which is the point size 
corresponding to "medium".
Eric
From: Robert C. <cim...@nt...> - 2008年07月04日 07:40:27
John Hunter wrote:
> On Thu, Jul 3, 2008 at 8:42 AM, John Kitchin <jki...@an...> wrote:
>> Thanks Matthias. That is a helpful example.
>>
>> I have been trying to figure out how to recursively examine all the objects
>> in fig to see if there is a particular settable property. It seems like the
>> algorithm has to be recursive so that it goes deep into all the lists, etc.
>> I have not figured out how to know when you have reached the bottom/end of a
>> trail.
>>
>> Such a function would let me set any text property in the whole figure
>> without needing to know if it was a text object, label, legend, etc... maybe
>> that is not as valuable as I think it would be though.
> 
> This is a good idea, and I just added an artist method "findobj" in
> svn that recursively calls get_children and implements a match
> criteria (class instance or callable filter). There is also a
> pyplot/pylab wrapper that operates on current figure by default. Here
> is an example:
> 
> 
> 
> import numpy as np
> import matplotlib.pyplot as plt
> import matplotlib.text as text
> 
> a = np.arange(0,3,.02)
> b = np.arange(0,3,.02)
> c = np.exp(a)
> d = c[::-1]
> 
> fig = plt.figure()
> ax = fig.add_subplot(111)
> plt.plot(a,c,'k--',a,d,'k:',a,c+d,'k')
> plt.legend(('Model length', 'Data length', 'Total message length'),
> 'upper center', shadow=True)
> plt.ylim([-1,20])
> plt.grid(False)
> plt.xlabel('Model complexity --->')
> plt.ylabel('Message length --->')
> plt.title('Minimum Message Length')
> 
> # match on arbitrary function
> def myfunc(x):
> return hasattr(x, 'set_color')
> 
> for o in fig.findobj(myfunc):
> o.set_color('blue')
> 
> # match on class instances
> for o in fig.findobj(text.Text):
> o.set_fontstyle('italic')
Great! I used to write many such functions for setting font sizes of all
elements in a figure. But speaking about the font sizes, one usually 
wants the title to be in larger font then the axis labels etc. How could 
something like this be implemented within your general findobj()?
Just for the reference, this is how I did it:
def setAxesFontSize( ax, size, titleMul = 1.2, labelMul = 1.0 ):
 """size : tick label size,
 titleMul: title label size multiplicator,
 labelMul: x, y axis label size multiplicator"""
 labels = ax.get_xticklabels() + ax.get_yticklabels()
 for label in labels:
 label.set_size( size )
 labels = [ax.get_xaxis().get_label(), ax.get_yaxis().get_label()]
 for label in labels:
 label.set_size( labelMul * size )
 for child in ax.get_children():
 if isinstance( child, pylab.Text ):
 child.set_size( titleMul * size )
Maybe it could be implemented in the sense of:
def myfontsizes( x ):
 """Depending on class of x, return also suggested value of the font 
 size."""
for o, size in fig.findobj( myfontsizes, suggest_value = True ):
 o.set_size( size )
# Default for suggest_value is False...
for o in fig.findobj(text.Text):
 o.set_fontstyle('italic')
What do you think?
r.

Showing 3 results of 3

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