python - 更改一些条形颜色
问题描述
我正在尝试将 matplotlib 中的颜色栏更改为最后一种颜色为蓝色。但最终它们都是绿色的。
colors = ['blue' if (i>=19 and i<23) else 'green' for i in
list(range(24))]
df.plot(y='Jan',kind='bar',edgecolor='none',figsize=(16,8),linewidth=2, color=colors)
plt.legend(prop={'size':16})
ax = plt.gca()
plt.gcf().autofmt_xdate()
ax.set_xticklabels(df.index)
plt.tight_layout()
plt.savefig('myimage.svg', format='svg', dpi=1200)
plt.show()
我错过了什么?我遵循了类似的教程
这是一些测试示例的数据
sales = [('Jan', [150, 200, 50,150, 200, 50,150, 200, 50, 150, 200, 50,150, 200, 50,150, 200, 50,150, 200, 50,150, 200, 50])]
df = pd.DataFrame.from_items(sales)
解决方案
df.plot(y='Jan',kind='bar',edgecolor='none',figsize=(16,8),linewidth=2, color=[colors])
它缺少双 [[]]
推荐阅读
- javascript - Reduce throws "NaN" in JavaScript?
- python - Problem in downloading image through urllib.request
- python - Python Click Option Backspace
- r - 按年循环 lm
- node.js - 使用前缀 discord.js 的名称
- c# - 从嵌入式系统更新屏幕
- python-3.x - Kivymd - 从底部工具栏更改屏幕不起作用
- python - 如何使用 Python 在网格中连接 * 最多 * 4 个图像?
- java - 局部变量的线程安全
- python - Matplotlib:六边形图中六边形之间的空格?