質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Matplotlib

MatplotlibはPythonのおよび、NumPy用のグラフ描画ライブラリです。多くの場合、IPythonと連携して使われます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

6706閲覧

matplotlibのcolorbarの目盛りにπを表示したい

ruei

総合スコア284

Matplotlib

MatplotlibはPythonのおよび、NumPy用のグラフ描画ライブラリです。多くの場合、IPythonと連携して使われます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2018/10/28 10:04

編集2018/10/28 10:31

matplotlibのカラーバーのメモリに"π","-π"を表示したいと思っています。

現在下のようなコードを使っていますが、
この場合、画像のように、π、-πが90度回転した形で表示されてしまいす。

しかも、colorbarにも3.142, -3.142という数字が表示されてしまっています。
イメージ説明

python

1fig = plt.figure() 2ax = fig.add_subplot(111) 3levels_=np.linspace(start=-math.pi, stop=math.pi, num=100, endpoint=True) 4ax.set_aspect("equal") 5ax.set_xlabel("X") 6ax.set_ylabel("Y") 7im = ax.contourf(self.X, self.Y, PhasediffAx[i], levels=levels_, cmap="bwr") 8cbar = fig.colorbar(im, ticks = [-math.pi, 0, math.pi], label = ["-π","0","π"]) 9fig.savefig("foo.png")

そこで、

cbar = fig.colorbar(im, ticks = [-math.pi, 0, math.pi], label = ["-π","0","π"])

の部分を、
https://matplotlib.org/examples/pylab_examples/colorbar_tick_labelling_demo.html
を参考に

cbar = fig.colorbar(im, ticks = [-math.pi, 0, math.pi]) cbar.ax.set_yticklabels["-π","0","π"]

と書き換えてみた所、

TypeError: 'method' object is not subscriptable

というエラーが出てしまいこちらも駄目でした。
正しく、カラーバーにπを表示する方法の分かり方いらっしゃったらご教示ください。

環境は次の通りです。

$ python Python 3.6.5 |Anaconda, Inc.| (default, Apr 29 2018, 16:14:56) [GCC 7.2.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import matplotlib >>> matplotlib.__version__ '2.2.2'

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

python

1cbar = fig.colorbar(im, ticks = [-math.pi, 0, math.pi]) 2cbar.ax.set_yticklabels["-π","0","π"]

の部分を

python

1cbar = fig.colorbar(im, ticks = [-math.pi, 0, math.pi]) 2cbar.ax.set_yticklabels(["-π","0","π"])

とすると上手く表示されました。

投稿2018/10/28 10:58

ruei

総合スコア284

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問