【发布时间】:2020-01-21 11:50:37
【问题描述】:
我的堆积条形图中有很多图例,我注意到在图例中颜色重复,所以我很难根据图例区分图中的真实值,所以我想为每个图例设置唯一的颜色传说中的价值,为此,我做了很多研究,有些没有用,有些很难理解,例如this
当我使用这个时,我得到了一个错误,'AxesSubplot' object has no attribute 'set_color_cycle' 所以有没有简单有效的方法
我不想要为每个元素单独应用颜色的代码,因为我的数据集很大,这里我的代码是关于我的情节的更多详细信息
例如
#suppose I have data of few cites and their complaints
city = ['NEW YORK', 'ASTORIA', 'BRONX', 'BRONX', 'ELMHURST', 'BROOKLYN',
'NEW YORK', 'BRONX', 'KEW GARDENS', 'BROOKLYN']
complaints = ['Noise - Street/Sidewalk', 'Blocked Driveway', 'Blocked Driveway',
'Illegal Parking', 'Illegal Parking', 'Illegal Parking',
'Illegal Parking', 'Blocked Driveway', 'Illegal Parking',
'Blocked Driveway']
# and from this I have created a stack bar chart
cmpltnt_rela = test2.groupby(['City', 'Complaint Type']).size().unstack().fillna(0).plot(kind='bar', legend = True, stacked=True)
plt.legend(loc='center left', bbox_to_anchor=(1, 0.5),ncol=2)
cmpltnt_rela.plot(figsize=(18,14))
【问题讨论】:
-
你的标题是问如何将图例放在图表之外,但你的问题似乎是如何使颜色可区分,你能更清楚一点吗?
-
@Nathan 很抱歉我忘记编辑标题了,我已经编辑好了
-
您能否添加一个示例 df 以便更轻松地重现您的问题?
-
您链接到的答案解释了您在最后一段中出现此错误的原因。该线程中还有其他答案。
-
@ImportanceOfBeingErnest 是的,我知道,但它们适用于子图,他们通过迭代(单独)应用它如何为我的代码转换我不知道你是否可以为我修改它那么这对我来说很棒
标签: python python-3.x pandas matplotlib