Ask Your Question
2

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

asked 2015-05-12 14:59:35 +0100

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?

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted
1

answered 2015-05-12 16:03:17 +0100

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.

edit flag offensive delete link more

Comments

What about figure titles?

Fusion809 gravatar imageFusion809 ( 2015-05-12 18:07:31 +0100 )edit
1

answered 2015-05-14 10:27:11 +0100

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.

edit flag offensive delete link more

Comments

1

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

kcrisman gravatar imagekcrisman ( 2015-05-14 17:00:36 +0100 )edit
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 ( 2015-05-22 16:28:54 +0100 )edit

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

stockh0lm gravatar imagestockh0lm ( 2019-04-14 23:31:00 +0100 )edit

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 ( 2019-05-08 22:15:07 +0100 )edit

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: 2015-05-12 14:59:35 +0100

Seen: 72,827 times

Last updated: May 14 '15