我目前正在开展一个项目,包括在PyQt4应用程序中绘制时间序列。我在64位Linux系统上使用matplotlib和python3.3的Qt4Agg后端。
绘图工作正常,但每当我尝试通过figureoptions按钮(带有绿色复选标记的按钮)更改某些内容时,x轴上的日期/时间格式将被浮动替换。
我已经包含了一些显示问题的简单代码(打开figureoptions对话框然后按apply!)
import matplotlib.pyplot as plt
import datetime
x=[]
y=[]
for hour in range(0,13):
x.append(datetime.datetime(2013,11,14,hour))
y.append(20)
plt.switch_backend('Qt4Agg')
plt.plot_date(x, y)
plt.show()
有谁知道如何改变这种行为?
我搜索过stackoverflow.com,matplotlib常见问题解答,文档和邮件列表,但找不到任何答案。
非常感谢你的帮助!谢谢!
答案 0 :(得分:0)
只是为了记录我是如何解决这个问题的。
在我的课程中,我重新定义了enterEvent,以便每次鼠标进入窗口时都会更新xaxis。当然,这不适用于上述示例,但是在适当的类中,如下所示:http://eli.thegreenplace.net/files/prog_code/qt_mpl_bars.py.txt
def enterEvent(self, event):
self.axes.get_xaxis()._update_axisinfo()
self.canvas.draw()
这不是完美的,而是一种解决方法!