При построении графика xlim() абсолютно игнорируется

Я строю график и хотел бы изменить ограничения по оси. Но xlim/ylim просто игнорируются.

%matplotlib inline
import matplotlib.pyplot as plt
plt.figure(figsize=(18,6))
plt.plot(list(range(array.shape[0])), array[:,1],'bo')
plt.ylim((0,0.0025))
plt.show()

версии ПО:

conda version : 4.7.5
conda-build version : not installed
python version : 3.6.8.final.0
notebook            5.7.8  py36_0
matplotlib          2.2.2  pypi_0     pypi
matplotlib-base     3.1.1 py36hfd891ef_0  conda-forge
widgetsnbextension  3.5.0  py36_0     conda-forge
plotly              3.10.0 py_0  
ipympl              0.3.3  py_0       conda-forge
ipyvolume           0.5.1  py36_1001  conda-forge
ipywidgets          7.5.0  py_0       conda-forge

массив представляет собой двумерный массив numpy с числами от 0 до 0,01, где я использую только второй столбец

Поскольку никто не может воспроизвести проблему, я предполагаю, что она вызвана виджетами и пакетами, которые я недавно установил, чтобы включить интерактивные графики в jupyter-notebook и jupyter lab.

введите здесь описание изображения


person AntonZi    schedule 17.07.2019    source источник
comment
Не могу воспроизвести. Ваш код работает для меня, ось Y заканчивается на 0,025   -  person Valentino    schedule 17.07.2019
comment
Также не может воспроизвести - можете ли вы включить более подробную информацию о том, что вы делаете? Какие версии программного обеспечения вы используете?   -  person Harry Beadle    schedule 17.07.2019
comment
Я использую Anaconda (обновлено недавно), Ipython, Jupyter Notebook. Также я установил несколько виджетов для рендеринга 3D-графиков в ноутбуке.   -  person AntonZi    schedule 17.07.2019
comment
пожалуйста, включите синтетические данные в свой пример. Мое дикое предположение заключается в том, что ваш массив на самом деле представляет собой массив строк, но трудно сказать, если вы не предоставите данные.   -  person Jody Klymak    schedule 17.07.2019
comment
Нет, это пустой массив. Нулевой (первый) столбец — datetime.date, столбцы 1-3 — np.float64 ››type(array[1][0]) datetime.date ››type(array[1][2]) numpy.float64   -  person AntonZi    schedule 17.07.2019
comment
Это неправильно во фрагменте (рис.): plt.ylim=(0,0.0025)). Пожалуйста, уберите знак равенства. Это правильно в текстовом фрагменте.   -  person Marcel Flygare    schedule 23.07.2019
comment
@MarcelFlygare ни в коем случае не работает. Я пробовал все возможные комбинации со знаком равенства, одинарными/двойными скобками и т.д.   -  person AntonZi    schedule 25.07.2019
comment
У меня работает, добавлю ответ с кодом.   -  person Marcel Flygare    schedule 25.07.2019


Ответы (1)


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

%matplotlib inline
import matplotlib.pyplot as plt
plt.figure(figsize=(18,6))
plt.plot(list(range(5)), [0.0020,0.0021,0.0022,0.0023,0.0025],'bo')
plt.ylim((0,0.0025))
plt.show()
person Marcel Flygare    schedule 25.07.2019