반응형
위젯에 의존하는 대화 형 플롯을 생성하려고합니다. 내가 가진 문제는 슬라이더를 사용하여 매개 변수를 변경하면 이전 플롯 이후에 새 플롯이 수행되는 대신 매개 변수에 따라 하나의 플롯 만 변경 될 것으로 예상한다는 것입니다.
예 :
from ipywidgets import interact, interactive, fixed, interact_manual
import ipywidgets as widgets
import matplotlib.pyplot as plt
%matplotlib inline
import numpy as np
def plot_func(freq):
x = np.linspace(0, 2*np.pi)
y = np.sin(x * freq)
plt.plot(x, y)
interact(plot_func, freq = widgets.FloatSlider(value=7.5,
min=1,
max=5.0,
step=0.5))
슬라이더를 4.0으로 이동 한 후 다음을 수행했습니다.
슬라이더를 움직일 때 그림 하나만 변경하고 싶습니다. 이것을 어떻게 달성 할 수 있습니까?
(Python 2.7, matplotlib 2.0을 사용하고 있으며 노트북과 jupyter를 최신 버전으로 업데이트했습니다. 추가 정보가 필요하면 알려주세요.)
해결 방법
그림을 변경하려면 새 그림을 만드는 대신 다음 방법을 제안 할 수 있습니다.
따라서 코드는 다음과 같이 보일 수 있습니다.
%matplotlib notebook
from ipywidgets import *
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 2 * np.pi)
fig = plt.figure()
ax = fig.add_subplot(1, 1, 1)
line, = ax.plot(x, np.sin(x))
def update(w = 1.0):
line.set_ydata(np.sin(w * x))
fig.canvas.draw_idle()
interact(update);
참조 페이지 https://stackoverflow.com/questions/44329068
반응형
'파이썬' 카테고리의 다른 글
파이썬 Python에서 CSV를 HTML 테이블로 변환 (0) | 2020.10.20 |
---|---|
파이썬에서 %의 결과는 무엇입니까? (0) | 2020.10.20 |
파이썬에서 한 문자열을 다른 문자열에 어떻게 추가합니까? (0) | 2020.10.19 |
파이썬에서 목록 목록의 열에 액세스하는 방법 (0) | 2020.10.19 |
파이썬 conda 용 pip3 설치 (0) | 2020.10.19 |
댓글