【发布时间】:2020-06-28 14:42:01
【问题描述】:
我是否有一个简单的方法可以强制左 y 轴从 0% 而不是 48% 开始?
这是我的代码:
fig, ax1 = plt.subplots(figsize=(18,12))
fig.autofmt_xdate()
#update ticks here when graph gets too large
tick_spacing = 5
#y_tick_spacing = 20
ax1.fmt_xdata = mdates.DateFormatter('%Y-%m-%d')
color = 'tab:blue'
ax1.set_xlabel('Date',fontsize=18)
ax1.plot(events_df['dt'], events_df['match_rate'], color=color)
ax1.tick_params(axis='y', labelcolor=color)
#ax1.set_ylim([0,100])
ax1.xaxis.set_major_locator(ticker.MultipleLocator(tick_spacing))
#ax1.yaxis.set_major_locator(ticker.MultipleLocator(y_tick_spacing))
ax2 = ax1.twinx()
color = 'tab:red'
ax2.plot(events_df['dt'], events_df['score'], color=color)
ax2.tick_params(axis='y', labelcolor=color)
ax2.xaxis.set_major_locator(ticker.MultipleLocator(tick_spacing))
fig.tight_layout()
plt.show()
我尝试添加 ax1.set_ylim([0,100]) 但这似乎没有效果,反而会挤压东西:
我对从 35% 开始的右 y 轴感到满意。
这是我希望从相同数据的谷歌表格版本中获得的结果:
【问题讨论】:
标签: python python-3.x dataframe matplotlib formatting