gpt4 book ai didi

python - 如何在Python中用两个数组绘制堆叠直方图

转载 作者:太空宇宙 更新时间:2023-11-03 16:10:04 25 4
gpt4 key购买 nike

我正在尝试创建一个堆叠直方图,显示恶性和良性肿瘤的团 block 厚度,其中恶性类为红色,良性类为蓝色。

我得到了 clump_thickness_array 和良性_or_malignant_array。良性或恶性数组由 2 和 4 组成。

  1. 如果良性或恶性等于 2,则为良性(蓝色)。
  2. 如果等于 4,则为恶性(红色)。

我不知道如何给良性和恶性肿瘤上色。我的直方图显示的内容与我试图实现的目标不同。

这是我到目前为止的代码和直方图:

fig, ax = plt.subplots(figsize=(12,8))
tmp = list()
for i in range(2):
indices = np.where(benign_or_malignant>=i )
tmp.append(clump_thickness[indices])

ax.hist(tmp,bins=10,stacked=True,color = ['b',"r"],alpha=0.73)

enter image description here

最佳答案

要使用每个组的不同长度的列表来获取堆叠直方图,您需要组装一个列表列表。这就是您对 tmp 变量所做的事情。但是,我认为您在 for 循环中使用了错误的索引。在上面,您声明要根据变量 benign_or_malignant 来标记数据。您想测试它是否正好是 2 还是正好 4。如果您真的只想要这两种可能性,请像这样重写:

for i in [2,4]:
indices = np.where(benign_or_malignant==i )
tmp.append(clump_thickness[indices])

关于python - 如何在Python中用两个数组绘制堆叠直方图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39409187/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com