Я строю графики с помощью 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
Обратите внимание, что значения внутри списка должны быть целыми, а не строковыми для построения с помощью pyqtgraph, поэтому я не могу записать напрямую и перейти к функции:
self.graphicsView.plot(XX,YY, pen='r', symbolBrush=(255,255,100), symbol='d', symbolPen='g')
Итак, естьспособ передать в функцию graphicsView.plot нужного формата, он говорит: 9: 10: 49?
или есть другой неизвестный мне путь?
спасибо
::::::::::: ОБНОВЛЕНИЕ :::::::::::::::: :
после сообщения: Показатьстроковые значения по оси x в 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 (enumerate (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'}
он пытается построить ось x со значениями временис форматом hr: mm: ss, но кажется, что self.graphicView.plot () пытается преобразовать, чтобы плавать каждое значение из списка XXX.
Как я могу обмануть функцию, чтобы преобразовать ':'значение как число с плавающей точкой
Или, может быть, лучше другое решение?я действительно потерян