我有一个基于时间索引的数据框,另一列显示在那个小时发生的崩溃期间受伤的行人数。我试图使用Matplotlib来绘制数据图,并成功绘制它,但是,范围太大了。我有一天的数据,并希望使用计算的最小值和最大值相应地设置x轴限制。我尝试过使用plt.set_xlim,但是收到错误:
AttributeError:'PathCollection'对象没有属性'set_xlim'
如何正确设置限制?
df = test_request_pandas()
df1 = df[['time','number_of_pedestrians_injured']]
df1.set_index(['time'],inplace=True)
df1 = df1.astype(float)
min = df1.index.min()
max = df1.index.max()
fig = plt.scatter(df1.index.to_pydatetime(), df1['number_of_pedestrians_injured'])
#fig.set_xlim([min, max]) // causing me issues
plt.show()
答案 0 :(得分:0)
您可以创建轴,然后使用ax.xlim()
。
import pandas as pd
df = pd.DataFrame({'x':[1,2,3], 'y':[3,4,5]})
fig = plt.figure()
ax = plt.subplot(111)
df.plot(x='x',y='y',ax=ax, kind='scatter')
ax.set_xlim(2,3)
答案 1 :(得分:0)
改为使用plt.xlim(min, max)
。