Matplotlib嵌入Tkinter时.gca()/.gcf()失效 日期轴格式调整无响应
Tkinter嵌入Matplotlib时x轴日期配置失效问题解决方案
核心问题原因
你使用的plt.gca()、plt.gcf()是Matplotlib全局接口,操作的是Matplotlib默认维护的全局绘图实例,和你手动创建用于嵌入Tkinter的自定义Figure实例完全独立,所以配置不会作用到你嵌入的图表上。同时Figure类本身没有plt、gcf属性,直接调用fig.plt/fig.gcf会触发属性错误。
修改方案
直接获取自定义Figure下的坐标轴对象进行配置,调整配置代码的执行顺序即可,修改对应代码片段如下:
# 先创建子图,拿到当前坐标轴对象ax ax = fig.add_subplot(111) ax.plot(x, y_axis) # 对ax直接配置x轴日期格式、间隔 ax.xaxis.set_major_formatter(mdates.DateFormatter('%Y-%m-%d')) ax.xaxis.set_major_locator(mdates.DayLocator(interval=7)) # autofmt_xdate是Figure实例的方法,直接用你创建的fig调用 fig.autofmt_xdate(rotation=30)
内容的提问来源于stack exchange,提问作者doctor_senpai69
相关产品推荐
相关产品推荐

