13

Assume that I have some data, and I want to create a plot of this data by passing it to a custom plotting function (myplot()). I am using the matplotlib's modules in myplot().

I would like myplot() to return the handle to a figure, and not plot display the plot when I call this function. Here is a sample code and output from iPython.

enter image description here

I have two questions regarding this:

  1. Why do I still see a plot, even though I am assigning the output of myplot() to f?
  2. What do I need to supress this plot when I am assigning the output of myplot() to a variable?
1
  • This is only an iPython Notebook feature, right? Because I don't see a plot when I pass the figures around in IDLE. Commented Jul 9, 2013 at 13:44

2 Answers 2

8

Start ipython with

ipython notebook

rather than

ipython notebook --pylab=inline

enter image description here

Sign up to request clarification or add additional context in comments.

2 Comments

I think you do not have to start the whole notebook-session in non-inline-modus. You can control the inline-backend-behaviour with the following command. %config InlineBackend.close_figures = False This will prevent your plots from beeing closed (thus shown inside the browser) immediately.
When you do the plot(t,x) the picture will be shown. Is there a way to generate the picture without it appearing?
1

If you do not want to start the whole notebook in non-inline-modus you can just use the following code:

%config InlineBackend.close_figures = False

def myplot(t,x):
    fig = figure()
    x = plot(t,x)
    fig.savefig('plot.png') # This is just to show the figure is still generated
    return fig

t = arange(0,6,0.01)
x = sin(t)

f = myplot(t,x)

1 Comment

This did not work. I still get the same output as shown in my question.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.