我想创建一个具有一个折线图和一个条形图的图形。这段代码没有显示我正在创建的两个图(只显示了其中一个):
df = pd.DataFrame({
'abnormal' : [90,40,30,30,30,25,25,20,15,10],
'fix' : [60,70,65,70,70,60,50,45,45,45],
'normal' : [140,160,170,180,190,200,210,220,230,240],
'bad_rate' : [210,100,100,70,70,75,70,60,65,60]})
df.set_index(pd.to_datetime(pd.date_range('2010-01-01', periods=10, freq='Y')), inplace=True)
df['abnormal'].plot(kind='bar')
df['bad_rate'].plot(secondary_y=True)
plt.show()
但是,如果不使用日期时间索引,它会正确显示:
df = pd.DataFrame({
'abnormal' : [90,40,30,30,30,25,25,20,15,10],
'fix' : [60,70,65,70,70,60,50,45,45,45],
'normal' : [140,160,170,180,190,200,210,220,230,240],
'bad_rate' : [210,100,100,70,70,75,70,60,65,60]})
#df.set_index(pd.to_datetime(pd.date_range('2010-01-01', periods=10, freq='Y')), inplace=True)
df['abnormal'].plot(kind='bar')
df['bad_rate'].plot(secondary_y=True)
plt.show()
我看不出这里有什么问题。
1条答案
按热度按时间krugob8w1#
一种选择是使用年份作为x值,并直接从matplotlib绘制:
输出: