Ask Your Question
2

How do I adjust the size of axes labels and figure titles in plots?

asked 9 years ago

Fusion809 gravatar image

I've been experimenting around with the following code:

from sage.calculus.desolvers import desolve_odeint
y,dy = var('y,dy');
g    = 9.8; 
l    = 1; 
f    = [dy,-g/l*cos(y)];
v    = [y,dy];
t    = srange(0,5,0.01);
ci   = [0,0];
sol  = desolve_odeint(f,ci,t,v,rtol=1e-15, atol=1e-10,h0=1e-4,hmax=1e-2,hmin=1e-6,mxstep=10000)
p    = line(zip(t,sol[:,0]),title=r"$\frac{d^{2}\theta}{dt^2} = -\frac{g}{l} \cos{\theta}$",axes_labels=[r"$t$",r"$\theta$"]);
p2   = line(zip(t,sol[:,1]));
p2  += text(r"$\frac{d\theta}{dt}$",(-0.5,0),fontsize=27);
p2  += text(r"$t(s)$",(5,0.5),fontsize=20);
p.show()

which gives this plot:image description

As you can see the axes labels and title of the figure are insanely small (or at least in my opinion). I'd like the axes labels to be 20 pt and the figure title to be 30 pt. How do I do this?

Preview: (hide)

2 Answers

Sort by » oldest newest most voted
1

answered 9 years ago

kcrisman gravatar image

You can do

p.fontsize(30)

to change the font size for the labels and ticks.

Unfortunately we don't seem to have the title font size set capability exposed from matplotlib, though surely this is possible too.

Preview: (hide)
link

Comments

What about figure titles?

Fusion809 gravatar imageFusion809 ( 9 years ago )
1

answered 9 years ago

eric_g gravatar image

Hi,

The issue of "insanely small" axes labels has been solved in ticket #18004 and integrated in Sage 6.7.beta2. So, if you do not want to wait for the next main Sage release (6.7, in a few weeks probably), you may consider upgrading to the latest Sage 6.7.beta (beta5 at the time of this writing).

Eric.

Preview: (hide)
link

Comments

1

Nice! See http://trac.sagemath.org/ticket/18421 for the title size.

kcrisman gravatar imagekcrisman ( 9 years ago )
1

Sage 6.7 is out, so you may use it to fix the size of the axes labels. Within Sage 6.7, there is indeed a new option for 2D graphics: axes_labels_size, which sets the relative size of axes labels with respect to tick marks labels. The default value is 1.6, which results in larger axes labels.

eric_g gravatar imageeric_g ( 9 years ago )

the ticket is still open? after four years, and priority "major"? I want to use this, too.

stockh0lm gravatar imagestockh0lm ( 5 years ago )

Unfortunately, "major" is basically the same as "default". Since open source projects tend to go with what "scratches the itch" of developers, it does depend on whether someone with know-how, time, and interest converges on a given ticket.

kcrisman gravatar imagekcrisman ( 5 years ago )

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 9 years ago

Seen: 73,038 times

Last updated: May 14 '15