【发布时间】:2020-06-21 23:06:28
【问题描述】:
我正在绘制一个 seaborn 热图,并希望仅使用自定义文本注释特定单元格。
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
from io import StringIO
data = StringIO(u'''75,83,41,47,19
51,24,100,0,58
12,94,63,91,7
34,13,86,41,77''')
labels = StringIO(u'''7,8,4,,1
5,2,,2,8
1,,6,,7
3,1,,4,7''')
data = pd.read_csv(data, header=None)
data = data.apply(pd.to_numeric)
labels = pd.read_csv(labels, header=None)
#labels = np.ma.masked_invalid(labels)
fig, ax = plt.subplots()
sns.heatmap(data, annot=labels, ax=ax, vmin=0, vmax=100)
plt.show()
以上代码生成如下热图:
注释行生成以下热图:
我只想在单元格上显示非 nan(或非零)文本。如何实现?
【问题讨论】:
标签: python pandas numpy matplotlib seaborn