2009-08-03 186 views
40

私は(縦)barchartを生成するためにmatplotlibを使用しています。問題は私のラベルがかなり長いことです。バーを上下に表示する方法はありますか?python/matplotlibの縦書きラベル付きBarchart

>>> from matplotlib import * 
>>> plot(xrange(10)) 
>>> yticks(xrange(10), rotation='vertical') 

答えて

58

は、あなたがこのような何かを意味していますか?

一般的に、垂直方向のmatplotlibにテキストを表示するには、キーワードrotation='vertical'を追加します。

さらにオプションについて、あなたは

がyticks関数はy軸上の目盛りをプロット(matplotlib.pyplot.text)ヘルプを見ることができます。私はあなたがもともとこの機能やイザベル機能を意味するのかどうかは分かりませんが、手続きは全く同じで、rotation = 'vertical'を追加する必要があります

'verticalalignment'と 'horizo​​ntalalignment'これにより、ティックやその他の要素に対してテキストをどのように整列させるかを定義することができます。

+0

注();しかしbar()。しかし、rotation = 'vertical'が鍵と思われる。しかし、これはまだ棒にダニを描かない。 – phihag

+0

xy軸のティックを意味しますか? グリッド機能を見てください。たとえば、グリッド(ls = ''、マーカー= 'v')。 grid()は、xy軸上のグリッドのプロットを制御します。 markerオプションではティックマーカーのスティールを定義し、ls = ''では目に見えないグリッドを取得します。 – dalloliogm

+0

@dalloliogmはよく聞こえます – phihag

5

私はthe matplotlib galleryを見ることをお勧めします。例の少なくとも2つは関連があると思われる:

  • text_rotation.pyテキストレイアウトが
  • barchart_demo2.py、最も基本的な例よりもやや複雑なレイアウトを持つ棒グラフの例をどのように機能するかを理解するため。 Jupyterノートで
1

あなたはこの

%matplotlib inline 
import matplotlib.pyplot as plt 
import numpy as np 

plt.xticks(rotation='vertical') 
plt.plot(np.random.randn(100).cumsum()) 

ようなものを使用することがありますか、あなたが使用することができます。私はプロットを使用していないよ

plt.xticks(rotation=90) 
関連する問題