2016-09-08 9 views
0

サイズを変えていくつかの図を表示したいのですが、数字が印刷されるときに常に同じサイズになっていることを確認してください。それをどうすれば実現できますか?matplotlib - figsizeを変更してもフォントサイズを一定に保つ

例として、私は、印刷時FIG1でのタイトルと軸ticklabelsはFIG2と同じ大きさになりますようにフォントサイズを設定するにはどうすればよい

import matplotlib.pylab as plt 
import matplotlib as mpl 

mpl.rc('font', size=10) 

fig1 = plt.figure(figsize = (3,1)) 
plt.title('This is fig1') 
plt.plot(range(0,10),range(0,10)) 
plt.show() 


mpl.rc('font', size=?) 

fig2 = plt.figure(figsize = (20,10)) 
plt.title('This is fig2') 
plt.plot(range(0,10),range(0,10)) 
plt.show() 

:のは、私は2つの数字を持っているとしましょうか?

+0

「印刷されたとき」とは何を意味するのかよく分かりません。 「紙に印刷」、「画面に表示」、「ファイルに保存」を意味しますか?同じフォントサイズを使用すると、フォントサイズは同じになります。 Figureのサイズを変更すると、図のサイズと比較してフォントの相対的なサイズが変更されますが、フォントのサイズは変更されません。 – farenorth

答えて

1

この場合、フォントサイズは同じです(つまり10ポイント)。彼らは広すぎる場合

しかし、Jupyterノートに数字が異なる大きさで表示することができる、以下を参照してください:ポイント単位でのフォントサイズはリニアスケールを持っている

Jupyter Notebook example

。なお、もしそうなら、あなた文字のサイズを正確に2倍大きくしたい場合は、正確に2倍のサイズ(たとえば20pt)を入力する必要があります。こうすることで、2番目の図を元のサイズの50%(長さと幅、領域ではなく)で印刷すると予想される場合、フォントは同じサイズになります。

このスクリプトの唯一の目的は、印刷する図形を作成することだけであれば、用紙または画面上に希望どおりにサイズを設定し、フォントサイズを同じにすることが最善です。その正確なサイズまたは比率で文書に貼り付けることができ、フォントは実際には同じサイズになります。


tcaswellで述べたようにサイズがあなたがfigsizeとして設定したものと異なるように、bbox_inches='tight'は効果的に、保存された図形の大きさを変更します。これは、他のものよりもいくつかの図形からより多くの空白を切り抜くことができるので、オブジェクトとフォントの相対的なサイズは、特定のアスペクト比では異なることになります。

+1

であり、 'bbox_inches = 'tight''となっています。例えば、ラテックスなどの図形のサイズを修正すると、効果的にフォントのサイズを変更することができます。 – tacaswell

+0

ああ、良い点!これを答えに加える。他の注意点があるのだろうかと思います。 – BrechtDeMan

+0

ありがとう!私はちょうど混乱していた。なぜなら、数字がジュピターノートブックに表示されてから2つのケースでフォントサイズが変化したからです。ただし、数値を保存した後のフォントサイズは同じです。 – Laura

関連する問題