B Davis
B Davis

Reputation: 53

Matplotlib plot from Python script not showing up in output when run in Jupyter Notebook

Trying to run a Python script from the directory that my Jupyter notebook is in. The script executes as expected, but the plot does not show up in the output in my Jupyter Notebook.

I have tried adding code like plt.show() to the test script, but it doesn't show the graph in the Jupyter output. I have also tried adding %matplotlib inline to the Jupyter cell, but that doesn't help either.

In Jupyter Notebook cell:

import matplotlib as plt
%matplotlib inline
!python test_plot.py

In the test_plot.py Python script:

import matplotlib.pyplot as plt
plt.plot([1, 2, 3, 4], [1, 4, 9, 16])
plt.show()

Expected Results: When I run the code straight in the notebook,

plt.plot([1, 2, 3, 4], [1, 4, 9, 16])

it produces a piecewise function. (Can't post image due to low reputation). However, this is not the actual result.

Actual results printed in Jupyter Cell: Figure(640x480)

Upvotes: 5

Views: 4291

Answers (1)

rrcal
rrcal

Reputation: 3752

Try using:

%run 'test_plot.py'

as opposed to

!python test_plot.py

You should be able to run the cell correctly with the desired chart being plotted

Upvotes: 10

Related Questions