グラフをインタラクティブに変更する

%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np
from ipywidgets import interact
@interact(title='sine curve')
def sine_curve(title):
    x = np.linspace(-np.pi, np.pi)
    plt.title(title)
    plt.plot(x, np.sin(x))

このsine curveの部分が変更可能になる。

%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np
from ipywidgets import interact
@interact(n=[1, 2, 3], color=['red', 'green', 'blue'])
def sine_curve(n, color):
    x = np.linspace(-np.pi, np.pi)
    plt.plot(x, np.sin(n * x), color=color)

色と山の数が変わる

%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np
from ipywidgets import fixed, interact
@interact(color=['red', 'green', 'blue'], title=fixed('sine curve'))
def sine_curve(title, color):
    x = np.linspace(-np.pi, np.pi)
    plt.title(title)
    plt.plot(x, np.sin(x), color=color)

関数の引数をインタラクティブにしたくないときは、fixedを使います

コメント

タイトルとURLをコピーしました