【发布时间】:2022-09-28 23:40:21
【问题描述】:
我正在努力寻找一种使用 seaborn 调整单元格宽度的方法。我正在寻找一种解决方案来绘制我的数据,每个单元格的宽度与持续时间成正比。在示例代码中,我有 3 个单元格对应于 3 个“事件”,它们不会持续相同的时间(请参阅数据帧数据中的持续时间)。我想包括持续时间来缩放单元格的宽度。我还附上了用于创建plot 的示例代码和数据。有人可以帮忙吗?
import matplotlib
import seaborn as sns
import matplotlib.pyplot as plt
import pandas as pd
data = pd.DataFrame({\'Date\':[\'2021-01-07\', \'2021-06-07\', \'2021-07-21\'],
\'Duration\':[\'5 days 03:00:00\', \'15 days 02:00:00\', \'2 days 10:00:00\'],
\'L\':[3, 1, 3], \'Pe\':[1, 3, 1]})
data.set_index(\'Date\', inplace=True)
data_plot = data[[\'L\', \'Pe\']]
cmap=matplotlib.cm.get_cmap(\'viridis\')
color=[cmap(0.25), cmap(0.5), cmap(0.75), cmap(1)]
fig, ax = plt.subplots(figsize=(15, 3))
ax=sns.heatmap(data_plot.T, cmap=color, cbar_kws={\'label\': \'Classes\', \'ticks\':[1, 2, 3, 4]})
plt.tight_layout()
plt.show()
标签: python