Вот как я замышляю
from matplotlib import pyplot
pyplot.figure();
pyplot.scatter(x=data[feat], y=data[target]);
pyplot.xlabel(feat);
pyplot.ylabel(target);
pyplot.show();
И я получаю вывод, как
Figure size 432x288 with 0 Axes>
<matplotlib.collections.PathCollection at 0x7fd80c2fbf50>
Text(0.5,0,'Age1')
Text(0,0.5,'Target')
Как я могу подавить этот вывод? Точка с запятой не работает. Я запускаю это в блокноте Jupyter.
Назначьте свои вызовы на график на случайное имя переменной, и никакого вывода не будет. По соглашению это может быть _
, но вы можете использовать любое имя переменной, которое вы хотите:
from matplotlib import pyplot
_ = pyplot.figure()
_ = pyplot.scatter(x=data[feat], y=data[target])
_ = pyplot.xlabel('feat')
_ = pyplot.ylabel('target')
pyplot.show()
Обратите внимание: в отличие от MATLAB
, полуколоны не подавляют вывод в python
, они просто используются для разграничения различных операторов и обычно не нужны, если вы используете новые строки как разделители (что является стандартным способом сделать это)
Проблема задокументирована здесь https://github.com/ipython/ipython/issues/10794
Возможно, вы/что-то установили для своей интерактивной оболочки значение from IPython.core.interactiveshell import InteractiveShell InteractiveShell.ast_node_interactivity = "all"
all
на last_expr
Следствием этого является то, что ячейка будет отображать выходные данные последнего выражения, а не каждое выражение. Конечно, вы все равно можете print
что-нибудь, и это будет работать нормально.
;
до последнего выражения например, вы можете добавить pass;
в конце ячеек, которые будут подавлять вывод
Убедитесь, что вы не используете эту переменную в другом месте