Постройте и аннотируйте значения NAN в тепловой карте морской борьбыPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Постройте и аннотируйте значения NAN в тепловой карте морской борьбы

Сообщение Anonymous »

У меня есть морская тепловая карта, основанная на данных данных, содержащей некоторые значения NAN. Тепловая карта оказывается просто пустыми. Тем не менее, я бы хотел, чтобы пользовательский цвет, например, светло -серый, который был нарисован с аннотацией «NAN». Как я могу этого добиться? < /P>

Код: Выделить всё

import seaborn as sns
import matplotlib.pyplot as plt
from matplotlib.colors import LogNorm, Normalize
import numpy as np
import pandas as pd

data = {
"Server (%)": [np.nan, 0.2, 2.4],
"Scheduler (%)": [np.nan, 2.3, 4.5]
}
merged_summary = pd.DataFrame(data)

# Prepare annotation matrix
annot = merged_summary.copy()
for i in range(annot.shape[0]):
for j in range(annot.shape[1]):
val = annot.iat[i, j]
if pd.isna(val):
annot.iat[i, j] = "N/A"
elif val > 1:
annot.iat[i, j] = f"{val:.1f} %"
else:
annot.iat[i, j] = f"{val:.3f} %"

fig, ax = plt.subplots(3,1, figsize=(5,7), constrained_layout=True)
cmap = plt.cm.get_cmap("coolwarm")
h2 = sns.heatmap(
data=merged_summary,
annot=annot.values,
fmt='',
cmap=cmap,
cbar=False,
linewidths=0.5,
linecolor='white',
mask=merged_summary.isna(),
vmin=0.1,
vmax=30,
norm=LogNorm(vmin=0.1, vmax=30),
annot_kws={"size": 8},
ax=ax[2],
)
plt.show()


Подробнее здесь: https://stackoverflow.com/questions/796 ... rn-heatmap
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»