Python - Matplotlib - отображение неполных данных на графике - PullRequest
0 голосов
/ 29 марта 2012

Я пытаюсь написать программу для генерации диаграммы выживаемости.Ось X имеет даты.Ось Y показывает оставшиеся часы на определенную дату.Проблема в том, что данные представлены не для всех дат заранее, так как это график выгрузки.Так что это приводит к ошибке -

"ValueError: x and y must have same first dimension"

Итак, мой вопрос, какие значения по умолчанию я могу назначить оставшимся точкам на оси Y?Я вставлю фактический код, если этой информации недостаточно.Спасибо.

Ответы [ 2 ]

2 голосов
/ 29 марта 2012

Я не уверен, что это именно то, что вам нужно, но используя маскированные массивы, вы можете избежать нанесения определенных точек. Смотрите мой ответ здесь .

Или, может быть, вы хотели бы что-то более похожее на this , которое пропускает их по оси x, а не наносит их на график?

1 голос
/ 27 сентября 2014

Я знаю, что этому вопросу 2 1/2 года, но у меня была похожая проблема с построением графиков с отсутствующими данными, и я подумал, что маскированные массивы были более сложными, чем они должны были быть.

Мое решение былопоставить значение numpy.inf в любой точке, где мне не хватало данных, а затем использовать опцию 'o-' при вызове matplotlib.pyplot.plot.Это приведет к разрыву линий там, где у вас нет данных, но если у вас есть единственная точка данных, где на каждой стороне пропущены данные, вы получите круг.

Единственным недостатком является то, что вы в конечном итогес кружочками в каждой точке линии, так что это может быть не красиво.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...