我有这个情节:
data = {'User 1': [1,2,3], 'User 2': [5, 8, 10], 'User 3': [80, 75, 100], 'User 4': [65, 80, 45]}
characteristics = [('commits', 'r'), ('intended h', 'g'), ('actual h', 'b')]
n_bars = (len(characteristics)+1)*len(data)
fig = plt.figure(figsize=(5,5))
ax = fig.add_axes([0.15, 0.15, 0.65, 0.7])
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
ax.set_yticklabels(data.keys())
ax.set_yticks(np.arange(len(characteristics)/2, n_bars, len(data)))
pers_id = 0
bar_id = 0
for name, data in data.iteritems():
for char_id, characteristic in enumerate(characteristics):
ax.barh(bar_id, data[char_id], facecolor=characteristic[1])
bar_id = bar_id + 1
ax.barh(bar_id, 100, facecolor='white', linewidth=0)
bar_id += 1
pers_id += 1
plt.savefig('perf.png')
plt.show()
我仍然需要的唯一大功能是在右上角添加一个图例,其中的标签characteristics[i][0]
和颜色来自characteristics[i][0]
.
我将如何让这个工作?