web-dev-qa-db-ja.com

IPythonでxの正弦のような単純な関数をプロットする

私の先生はJupyter NotebookまたはIPythonでいくつかの機能をプロットしました。 Jupyter Notebookをインストールし、ホーム画面を表示していますが、関数をプロットするにはどうすればよいですか?

すでに試してみました:plot sin(x)が、このメッセージが表示されます:

  File "<ipython-input-4-7979a129f00f>", line 1
    plot sin(x)
           ^
SyntaxError: invalid syntax

Screenshot

2
Stap Denisov

端末タイプから:

Sudo apt-get install ipython-notebook python-numpy python-matplotlib  

IPython Notebookの最新バージョンは、Jupyter Notebookとして知られるようになりました。オプションで、IPython Notebookの代わりにJupyter Notebookをインストールできます。 Ubuntu 14.04/16.04/16.10では、 この回答 の指示に従って、IPython NotebookをJupyter NotebookにアップグレードしてJupyter Notebookをインストールします。 Ubuntu 17.04および17.10では、Sudo apt install jupyter-notebook jupyter-core python-ipykernelコマンドを使用して、デフォルトのUbuntuリポジトリからJupyter Notebookをインストールできます。 Ubuntu 18.04以降では、コマンドSudo apt install python3-notebook jupyter jupyter-core python-ipykernelを使用して、デフォルトのUbuntuリポジトリからJupyter Notebookをインストールできます。 python-ipykernelは、Python 2.xプログラムをJupyter Notebookで実行するために必要です。それ以外の場合はPython 3.xのみをサポートします。 Jupyter Notebookがインストールされている場合、Jupyterを起動するコマンドはjupyter notebookで、現在のノートブックでプロットを有効にするコードの最初の行は%matplotlib inlineです。

matplotlib.orgの例 で正弦波プロットを生成するには、次の手順に従います。

  1. Ipython-notebook Webブラウザーインターフェースを開きます。ターミナルから実行:

    ipython notebook --pylab  
    

    --pylabオプションは、IPythonからJupyterノートブックに移行したときに削除されました。代わりにjupyter notebookを使用してJupyterを起動します。

  2. 新しいノートブックを作成します。 IPython Notebookインターフェースから、New Notebookボタンをクリックします。デフォルトのWebブラウザーで新しいノートブックタブが開きます。新しいノートブックタブからFile->Renameを選択し、新しいノートブックの名前をsine_waveをクリックし、OKボタンをクリックします。

  3. 下記の正弦波をプロットするためのサンプルPythonコードをコピーし、キーボードの組み合わせを使用してIn [1]:と書かれている場所の右側にあるsine_waveノートブックに貼り付けます Ctrl+V。一度に1行ではなく、コードブロック全体を貼り付けます。

    import matplotlib.pyplot as plt  
    import numpy as np  
    
    t = np.arange(0.0, 2.0, 0.01)  
    s = np.sin(2*np.pi*t)  
    plt.plot(t, s)  
    
    plt.xlabel('time (s)')  
    plt.ylabel('voltage (mV)')  
    plt.title('voltage (mV) vs. time (sec)')   
    plt.grid(True)  
    plt.savefig("plot-voltage-vs.-time.png")  
    plt.show()  
    

    plt.savefig("plot-voltage-vs.-time.png")は、余分なウィンドウchromeをホームディレクトリにすべて残さずにプロットの画像を保存します。

  4. 黒い三角形の実行ボタンをクリックします(  )メニューバーでコードブロックを実行します。

  5. 出力プロットは、下のスクリーンショットのポップアップウィンドウのような小さなポップアップウィンドウに表示されます。

    IMG:

  6. 手順3.と4.を繰り返して、新しいコードブロック(In [2]:)を実行します。 In [2]:の後に次の簡単なPythonコードを貼り付けて実行してみてください。

    import matplotlib.pyplot as plt  
    import numpy as np 
    
    x = np.arange(0.0, 2.0, 0.01)
    y = np.sin(2*np.pi*x)
    plt.plot(x, y)
    plt.show()  
    

エラーメッセージImportError: No module named 'matplotlib'は、Python 2.x用にインストールされたJupyterでPython 3を使用したことが原因でした。 Python 2のカーネルを追加することで、Python 2のJupyter NotebookでPython 3を使用できます。Python 3、次のようなPython 2カーネルをセットアップできます。

python2 -m pip install ipykernel
python2 -m ipykernel install --user
8
karel