本质上,我试图将多个直方图转换为单个图上的1D热图“条”,如下图所示。
的数据
我不太确定从哪里开始,因为我不太习惯数据可视化,并且只对matplotlib和seaborn有一点了解。
我在做一些事情上取得了一些进展,但这绝对不是我一直在寻找的。
# Define the arrays
foo = np.array([0, 2, 3, 1, 0])
bar = np.array([0, 0, 2, 1, 0])
baz = np.array([0, 1, 1, 0, 0])
# Define the corresponding bin labels
bin_labels = ['0.0-0.2', '0.2-0.4', '0.4-0.6', '0.6-0.8', '0.8-1.0']
# Concatenate the arrays vertically
combined_data = np.vstack((foo, bar, baz))
# Create the histogram plot
# sns.heatmap(combined_data, cmap='YlGnBu', annot=True, fmt='d', xticklabels=bin_labels, cbar=False)
sns.heatmap(combined_data, cmap='Blues', fmt='d', xticklabels=bin_labels, yticklabels=["foo","bar","baz"], cbar=True)
plt.xlabel('Counts')
plt.ylabel('Type')
plt.title('Counts Heatmap')
# Display the plot
plt.show()
字符串
的
1条答案
按热度按时间ni65a41a1#
您可以创建一个matplotlib堆叠条形图,其中每个段的高度相同,但您可以根据百分比更改颜色。
字符串
的数据
如果将
edgecolor="lightgray"
添加到条形图调用中,可能会更清楚一些,但这取决于您。的