[英]Python matplotlib bars grouped by week
我有以下 python 示例。
import matplotlib.pyplot as plt
import numpy as np
x= ['Ja', 'Nein', 'Ja', 'Nein', 'Ja', 'Nein']
y = [60, 46, 31, 37, 1, 3]
week = [27.0, 27.0, 28.0, 28.0, 29.0, 29.0]
x_pos = [i for i, _ in enumerate(x)]
plt.bar(x_pos, y, color='green')
plt.xticks(x_pos, x)
plt.show()
我想按周订购条形图,这意味着第 27 周的蓝色条形图,第 28 周的红色条形图,第 29 周的绿色条形图始终显示 x 值。 y 是该组合的计数。
任何人都可以帮忙吗?
最佳罗伯特
您可以在周和该周想要的颜色之间创建颜色映射,并在创建图形时传递 colors 列表:
import matplotlib.pyplot as plt
import numpy as np
x= ['Ja', 'Nein', 'Ja', 'Nein', 'Ja', 'Nein']
y = [60, 46, 31, 37, 1, 3]
week = [27.0, 27.0, 28.0, 28.0, 29.0, 29.0]
x_pos = [i for i, _ in enumerate(x)]
# Mapping from week to color:
week_to_color = {
27.0: 'blue',
28.0: 'red',
29.0: 'green',
}
# Pass a list of colors to your bar chart:
plt.bar(x_pos, y, color=[week_to_color[w] for w in week])
plt.xticks(x_pos, x)
plt.show()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.