35
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

seabornのheatmapでy軸が足りなくて、annotが活用できない

Last updated at Posted at 2019-07-09

2019/11/25追記

matplotlib3.1.2がリリースされて、解決されてました!
バージョンを上げましょう〜

はじまり

セル内に数値を表示してくれるannotが使いたくて、matplotlibからseabornに移ろうと思いました。
以下のコードで確認をしていたところ…

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

flights_long = sns.load_dataset("flights")
flights = flights_long.pivot("month", "year", "passengers")

fig, ax = plt.subplots(figsize=(6, 6))
sns.heatmap(flights, annot=True, fmt="d", linewidths=.5, ax=ax, square=True)

index_pre.png

y軸の端が足りなくて、数値が切れてしまいました。

結論

調べてみてもいい答えを探し当てることができなかったので、応急処置としてylimを定義することで回避しました。
追加したのは、最後の1行のみです。
一般的な表記として、ax.set_ylim(${y軸の要素数}, 0)とすれば、切れるのは回避できます。

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

flights_long = sns.load_dataset("flights")
flights = flights_long.pivot("month", "year", "passengers")

fig, ax = plt.subplots(figsize=(6, 6))
sns.heatmap(flights, annot=True, fmt="d", linewidths=.5, ax=ax, square=True)
ax.set_ylim(len(flights), 0)

index.png

35
14
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
35
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?