我正在尝试在条形图的顶部绘制折线图,以便从数据框中进行分析。每当我尝试添加折线图时,由于某些原因,右侧的y轴都会变成干草,而x轴上的条形图标题会从正确变为字母顺序。我希望右侧的y轴井然有序,并且如果可能的话,将直线弄直,下面是添加线后的条形图 我正在尝试在x上绘制索引值,x是城镇标签,y /轴在左侧y轴上,人口在右轴上。
首先应该是贝尔法斯特,然后是伦敦德里。
感谢别人的帮助。
x1= CitySample2017["index"]
y1= CitySample2017["Town/City"]
y2= CitySample2017["Population"]
ax1= CitySample2017.plot.bar(y="Town/City", x='index')
ax2 = ax1.twinx()
ax2.plot(x1, y2)
答案 0 :(得分:1)
您正在使用matplotlib 2.1。升级到matplotlib 2.2或更高版本,代码将按预期工作。
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame({"index" : ["Belfast", "London", "Twoabbey", "Lisboa", "Barra"],
"town" : [5000,1000,600,600,500],
"pop" : [12,14,16,18,20]})
ax1= df.plot.bar(y="town", x='index')
ax2 = ax1.twinx()
ax2.plot(df["index"], df["pop"])
plt.show()
答案 1 :(得分:0)
我不确定是否看不到您的数据,但请尝试运行此代码而不是您的代码:
ax1 = CitySample2017.plot.bar(x='index', y='Town/City')
ax2 = ax1.twinx()
CitySample2017.plot(x='index', y='Population', ax=ax2)