Pandas 'color=[]' 仅显示图表中所有条形的第一个颜色值
Pandas 'color=[]' only displaying first color value for all bars in chart
我正在使用 Pandas 1.1.4 尝试在 Jupyter 中绘制数据框,根据列的值,条形颜色为特定颜色。
col = []
for count in df_count.values:
val = [1, 3, 6]
colors = ['r', 'g', 'b']
for i in range(len(val)):
if count == val[i]:
col.append(colour[i])
列输出:
['r', 'r', 'g', 'r', 'r', 'r', 'b', 'r', 'g']
这应该会创建一个条形图,条形图的颜色如上表所示。
df_count.plot.barh(figsize=(10, 5), color=col, legend=False)
然而,情况似乎并非如此,因为整个图表都采用了列表中第一个值 'r' 的颜色。我在这里遗漏了什么吗?
Screenshot of the result
我在发布这个问题后几乎立即找到了答案,但我会留下一个解决方案以防万一有人遇到这个问题。
df_count.plot.barh(figsize=(10, 5), color=[col], legend=False)
我正在使用 Pandas 1.1.4 尝试在 Jupyter 中绘制数据框,根据列的值,条形颜色为特定颜色。
col = []
for count in df_count.values:
val = [1, 3, 6]
colors = ['r', 'g', 'b']
for i in range(len(val)):
if count == val[i]:
col.append(colour[i])
列输出:
['r', 'r', 'g', 'r', 'r', 'r', 'b', 'r', 'g']
这应该会创建一个条形图,条形图的颜色如上表所示。
df_count.plot.barh(figsize=(10, 5), color=col, legend=False)
然而,情况似乎并非如此,因为整个图表都采用了列表中第一个值 'r' 的颜色。我在这里遗漏了什么吗?
Screenshot of the result
我在发布这个问题后几乎立即找到了答案,但我会留下一个解决方案以防万一有人遇到这个问题。
df_count.plot.barh(figsize=(10, 5), color=[col], legend=False)