这是我的代码-
import pandas as pd
import matplotlib.pyplot as plt
data = [[-1,10],[5,12],[7,13]]
df = pd.DataFrame(data,columns=['Hops','Frequency'])
plt.figure()
df.plot(x='Hops',y='Frequency',kind='bar',width=0.2,color='blue')
plt.xlabel('Hops')
plt.ylabel('Frequency')
plt.ylim([0,20])
plt.xlim([-10,10])
我想在-10到10的x轴上标记极限值。在我的代码中,它在y轴而不是x轴上显示标记。
答案 0 :(得分:0)
您需要覆盖默认情况下熊猫的格式。您可以使用plt.xticks
手动设置x刻度和标签。
import pandas as pd
import matplotlib.pyplot as plt
data = [[-1,10],[5,12],[7,13]]
df = pd.DataFrame(data,columns=['Hops','Frequency'])
plt.figure()
df.plot(x='Hops',y='Frequency',kind='bar',width=0.2,color='blue')
plt.xlabel('Hops')
plt.ylabel('Frequency')
plt.ylim([0,20])
plt.xlim([-10,10])
plt.xticks([-10, 0, 10], [-10, 0, 10]) # Or whatever you need them to be
或者,您可以直接使用plt.bar
并避免使用熊猫格式。
plt.bar(df['Hops'], df['Frequency'])
plt.xlabel('Hops')
plt.ylabel('Frequency')
plt.ylim([0,20])
plt.xlim([-10,10])
答案 1 :(得分:0)
由于问题尚不清楚,因此需要在这里猜测。就我的解释而言,您想显示一个数字条形图,其中条形图位于其x
值所给定的位置。熊猫条形图本质上是分类的。因此,要绘制数字条形图,您需要使用matplotlib。
import pandas as pd
import matplotlib.pyplot as plt
data = [[-1,10],[5,12],[7,13]]
df = pd.DataFrame(data,columns=['Hops','Frequency'])
plt.figure()
plt.bar(x='Hops',height='Frequency', width=0.2, color='blue', data=df)
plt.xlabel('Hops')
plt.ylabel('Frequency')
plt.ylim([0,20])
plt.xlim([-10,10])
plt.show()