我用pyqtgraph进行绘图,但是我一直试图用我在X轴上需要的值来表示:
我有一个包含int值的列表,它是从xml文件获取的。
XX == [91049, 91049, 91049, 91049, 91049, 91051, 91057, 9110, 9110, 9118, 91111, 91111, 91119, 91122, 91122, 91130, 91133, 91133, 91142, 91145, 91145, 91153]
读取值的正确方法是:XX [0] = 9:10:49,XX [1] = 9:10:49,...,XX [n-1] == 9:11: 45,XX [n] = 9:11:53
如何编码以便在X轴上显示正确的格式,它表示为9:10:49
要注意,list内的值必须为int,而不是字符串,以便使用pyqtgraph进行绘制,因此我无法直接写下并传递给函数:
self.graphicsView.plot(XX,YY, pen='r', symbolBrush=(255,255,100), symbol='d', symbolPen='g')
所以,有一种方法可以将正确的格式传递给graphicsView.plot,它说:9:10:49?
还是我还有另一条未知之路?
谢谢
::::::::::::更新::::::::::::::::: :
该帖子之后:Show string values on x-axis in pyqtgraph
我得到了错误:
could not convert string to float: '9:10:49'
我将行更改为:
self.graphicsView.plot(list(XXX.value()),YY, pen=(255,0,0), name='red', symbolBrush=(255,0,0), symbolPen='w')
以及代码: XXX = dict(枚举(X))
所以,XXX现在是一个字典,如下所示:
{0: '9:10:49', 1: '9:10:49', 2: '9:10:49', 3: '9:10:49', 4: '9:10:49', 5: '9:10:51', 6: '9:10:57', 7: '9:11:00', 8: '9:11:00', 9: '9:11:08', 10: '9:11:11', 11: '9:11:11', 12: '9:11:19', 13: '9:11:22', 14: '9:11:22', 15: '9:11:30', 16: '9:11:33', 17: '9:11:33', 18: '9:11:42', 19: '9:11:45', 20: '9:11:45', 21: '9:11:53'}
它尝试使用hr:mm:ss格式绘制带有时间值的x轴,但似乎self.graphicView.plot()尝试转换以浮动列表XXX中的每个值。
我该如何欺骗函数以将':'值转换为浮点数
也许是另一种更好的解决方案?我真的迷路了