Python 用不同的图例颜色绘制条形图
我想画一张图表。我可以画一个折线图,可以显示5种不同的颜色和5个图例。我想绘制一个可以显示5种不同颜色的条形图,但我绘制的条形图只有一种颜色,我可以知道我的代码有什么问题吗 这是我的密码:Python 用不同的图例颜色绘制条形图,python,pandas,dataframe,plot,Python,Pandas,Dataframe,Plot,我想画一张图表。我可以画一个折线图,可以显示5种不同的颜色和5个图例。我想绘制一个可以显示5种不同颜色的条形图,但我绘制的条形图只有一种颜色,我可以知道我的代码有什么问题吗 这是我的密码: import pandas as pd import matplotlib as plt df = pd.read_csv('df.csv') df.set_index('date',inplace=True) date symbol roe 31/12/2015 NEM -0.9866
import pandas as pd
import matplotlib as plt
df = pd.read_csv('df.csv')
df.set_index('date',inplace=True)
date symbol roe
31/12/2015 NEM -0.9866
31/12/2016 NEM -6.8385
31/12/2017 NEM -0.6164
31/12/2018 NEM 2.7824
31/12/2019 NEM 13.2141
31/12/2015 MLM 7.1164
31/12/2016 MLM 10.27
31/12/2017 MLM 15.2355
31/12/2018 MLM 9.5042
31/12/2019 MLM 11.4322
30/9/2015 APD 13.0861
30/9/2016 APD 15.5544
30/9/2017 APD 11.3416
30/9/2018 APD 13.3381
30/9/2019 APD 15.8882
31/12/2015 VMC 5.2291
31/12/2016 VMC 9.238
31/12/2017 VMC 11.9421
31/12/2018 VMC 9.9529
31/12/2019 VMC 11.0729
31/12/2015 FMC -11.1408
31/12/2016 FMC 6.558
31/12/2017 FMC -4.9167
31/12/2018 FMC 16.7456
31/12/2019 FMC 21.2189
我可以画一个折线图:-
df.groupby('symbol')['roe'].plot(figsize=(10,8),legend='True')
我可以绘制图表,但我希望图表上每年有5个不同的条形图,颜色不同。我能知道怎么解决这个问题吗
df.groupby('symbol')['roe'].plot(kind='bar', legend='True', figsize = (5,5))
让我们尝试按年份分组并绘制:
for y,d in df.groupby(pd.to_datetime(df['date']).dt.year):
ax = d.pivot('date','symbol','roe').plot.bar()
ax.set_title(y)
df.pivot('date','symbol','roe').plot.bar()
您将有五个不同的图,每个图为期一年,如下所示:
如果要将所有图形都打印到一个图形中,请跳过groupby
,只需旋转并打印:
for y,d in df.groupby(pd.to_datetime(df['date']).dt.year):
ax = d.pivot('date','symbol','roe').plot.bar()
ax.set_title(y)
df.pivot('date','symbol','roe').plot.bar()
得到
你想为年份或符号使用不同的颜色吗?您好,我想每年都有5个不同的图表,有5种不同的颜色。提前谢谢。是的,谢谢你的帮助。我可以知道有没有删除日期时间列上的月份和日期的功能?符号APD存在一个问题,即月份和日期与这4个符号不同。如果您的
date
列为datetime类型,请提前感谢xdf['date'].dt.year
。