実現したいこと
Excelデータからヒートマップを作成したい
実行結果
該当のソースコード
python
1import pandas as pd 2import seaborn as sns 3import matplotlib.pyplot as plt 4path=r"C:\よう実\Book3.xlsx" 5df=pd.read_excel(path) 6print(df) 7sns.heatmap(df) 8plt.show()
###データの中身
1 2 3 4 5 6 7 8 10 11 12 13 0 0.441917 0.571579 0.668751 0.527957 0.370908 0.584363 0.486324 0.370908 0.767294 0.658079 0.321843 0.396239 1 0.492767 0.640370 0.651971 0.527950 0.554962 0.617620 0.504206 0.539643 0.579781 0.666144 0.370908 0.449357 2 0.448931 0.692970 0.650659 0.697246 0.642706 0.635657 0.689731 0.695371 0.721158 0.621455 0.553356 0.450163 3 0.487369 0.605293 0.650659 0.664098 0.682370 0.718008 0.632971 0.654054 0.614775 0.692358 0.597424 0.597116 4 0.412695 0.737857 0.754797 0.687051 0.670295 0.739909 0.623594 0.649123 NaN 0.723128 0.580822 0.571987 .. ... ... ... ... ... ... ... ... ... ... ... ... 146 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 0.711146 NaN 147 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 0.731036 NaN 148 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 0.780622 NaN 149 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 0.802218 NaN 150 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 0.826274 NaN
質問
x軸を1から13のにして,
y軸を0から1の範囲に目盛りを設定して小数点の数値を入れたいです.
x軸はできていますが.
y 軸には行数が入っているので,これを0~1にするにはどうすればいいでしょうか?
データの中身を昇順並び替えせずに、単にY軸のラベルを0-1にしたいということですかね?
それだけであればyticklabelsにリストを渡せば実現できると思いますが。。。
https://pythondatascience.plavox.info/seaborn/heatmap

ありがとうございます!出来ました

すいませんが,ヒートマップを正方形にしたいです.いま実行しているものは正方形ではないので.
多分エクセルデータが悪いとはおもうんですけど.どう修正すればいいですか?
squareかな。
sns.heatmap(#ほかの項目# , square=True)
たぶん他にも知りたいことたくさんあると思いますので、こちらのサイトを見てみるといいでしょう。きっとあなたの力になってくれます
https://pythondatascience.plavox.info/seaborn/heatmap

丁寧な対応ありがとうございます。頑張ってやってみます
