Как заставить plt.show () показывать цифры в Jypyter? - PullRequest
0 голосов
/ 21 апреля 2020

Я новичок в python, и я использую matplotlib.pyplot, чтобы нарисовать некоторые фигуры в Jupyter. Когда я использую plt.plot (), он просто показывает одну строку на одном рисунке, но когда я пытаюсь показать две линии на одном рисунке, используя plt.show (), ничего не отображается. Это работает для PyCharm, но я не знаю, почему это не работает для Jupyter Notebook.

import matplotlib.pyplot as plt
import numpy as np
X = np.linspace(-2, 2, 100)
y1 = X
y2 = X ** 2
plt.plot(X, y1, "g-")  # it shows y=x in one figure
plt.plot(X, y2, "b-")  # it shows y=x**2 in another figure
plt.show()  # nothing shows!!!

Как показать эти две линии на одной фигуре?

my Jupyter screen-print

Ответы [ 2 ]

1 голос
/ 21 апреля 2020

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

Или хотя бы

plt.plot(X, y1, "g-")  # it shows y=x in one figure
plt.plot(X, y2, "b-")  # it shows y=x**2 in another figure
plt.show()

в одной ячейке. :)

0 голосов
/ 21 апреля 2020

Вы можете использовать волшебный c декларативный I Python (который работает под капотом Jupyter), просто добавьте:

%matplotlib inline

в ячейку кода перед вашим графиком (например, с импортом в самом начале вашей записной книжки). Он выполнит эту работу автоматически, и вам не нужно будет вводить команду show для каждой фигуры.

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