Python 在QtCharts.QDateTimeAxis上设置动态刻度

Python 在QtCharts.QDateTimeAxis上设置动态刻度,python,qt5,pyside2,qtcharts,Python,Qt5,Pyside2,Qtcharts,我正在使用Qt5(通过pyside2)绘制一个“金钱/时间”图表应用程序 我可以画出数据,现在我正试图设置轴。 我用支持动态刻度的QValueAxis设置了y轴,因此我可以说“每10000欧元画一个刻度” 轴y=QtCharts.QValueAxis() 轴y.setTickType(QtCharts.QValueAxis.TicksDynamic) 轴y设置止动器(0) 轴y设置间隔(10000) 轴y.设置MinortickCount(9) self.addAxis(y轴,Qt.AlignL

我正在使用Qt5(通过pyside2)绘制一个“金钱/时间”图表应用程序

我可以画出数据,现在我正试图设置轴。 我用支持动态刻度的
QValueAxis
设置了y轴,因此我可以说“每10000欧元画一个刻度”

轴y=QtCharts.QValueAxis() 轴y.setTickType(QtCharts.QValueAxis.TicksDynamic) 轴y设置止动器(0) 轴y设置间隔(10000) 轴y.设置MinortickCount(9) self.addAxis(y轴,Qt.AlignLeft) 我无法用x轴获得相同的结果。我使用的是
QDateTimeAxis
,但在我看来,它缺少任何动态设置刻度的方法

我想实现的是:“在每年的1月1日画一个大勾号,在每个月初画一个小勾号”。

这确实不是正确的方法[0],但作为一种快速且“可实现”的解决方法,您可以用
QCategoryAxis
替换
QDateTimeAxis
,并填充各种“类别”(例如)数据可用的年份(+-前后某一年)

轴x=QtCharts.QCategoryAxis() axis_x.SetLabelPosition(QtCharts.QCategoryAxis.AxislabelPositionValue) 以年为单位的dt(数据): 轴x.附加(f'{dt}',ts(dt)) self.addAxis(轴x,Qt.AlignBottom) 系列附件(x轴) 其中
years
产生数据的年份(作为
date
对象),并
ts
提取历元时间戳

[0]据我所知,唯一的“真正”解决方案是抛弃
QtCharts
,依靠
Qwt
绘制图表