gpt4 book ai didi

python - Pyplot 颜色不符合预期

转载 作者:行者123 更新时间:2023-12-01 06:11:58 29 4
gpt4 key购买 nike

有谁知道为什么这段代码不能正确绘制框颜色。我希望每个组件都有不同的颜色,但它们都是黑色的,带有蓝色图例。

from numpy import array, zeros
import matplotlib.pyplot as plt

# Components: Useage times (start, stop), wattage, detail

COMPONENTS = {"fridge": ( [(0.0,24.0)], 35, " Litres"),
"kettle": ([(7.3,7.33), (19.0,19.3)], 2500, ""),
"netbook": ([(8.0,9.3),(12.0,15.0)], 12.5, ""),
"light bulb": ([(18.0,22.0)], 20, "")
}
COLORS = ('b','g','r','c','m','y','k','w')
PLOT = []
TIME = range(24*60)

Powers = [] # list of array of power for each component
for key in COMPONENTS.keys(): # each useage
p = zeros(len(TIME))
for j in COMPONENTS[key][0]: # start and stop
start = round(j[0]*60)
end = round(j[1]*60)
p[start:end] = COMPONENTS[key][1]
Powers.append(p)

b=zeros(len(TIME))
for i in range(len(COMPONENTS.keys())):
PLOT.append(plt.bar(TIME,Powers[i],width = 1, color=COLORS[i], bottom=b))
b+=Powers[i]


plt.ylabel('Power (W)')
plt.xlabel('Time (h)') ###
plt.title('Power Cycle')
plt.xticks(range(0,25*60,60) ,[str(t) for t in range(25)])
plt.legend( tuple([i for i in PLOT]), tuple([c for c in COMPONENTS.keys()]) )

plt.show()

最佳答案

就图表而言,您的代码没有问题。问题是条形太多,所以你只能看到黑色边框。这是放大时的样子: enter image description here

要获得正确的图例,请在绘图时传递 label 参数,然后在完成后调用不带参数的 plt.legend()

关于python - Pyplot 颜色不符合预期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5407207/

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