Jupyter Notebook 인터렉티브(interactive) 기능 추가 - ipywidgets
ipywidgets 이란?
ipywidgets은 Jupyter Notebookr과 JupyterLab에서 인터렉티브(interactive) 기능을 추가하거나 시각화하기 위한 라이브러리입니다. 다양한 그래픽 컨트롤과 위젯을 사용하여 Jupyter Notebook 내에 데이터 분석과 시각화를 위한 대화형 사용자 인터페이스를 만들 수 있습니다. Button, Slider, Progressbar, Text Box 등 다양한 인터페이스 위젯을 지원합니다. 예를 들어 사용자가 실시간으로 데이터를 탐색하고 상호 작용할 수 있는 대화형 대시보드를 만들 수 있습니다.
ipywidgets는 데이터 탐색과 분석을 위해 Jupyter Notebook을 사용하는 분석가나 개발자가 사용해 보면 매우 좋을 것 같습니다.
설치 (Installation)
설치는 pip 또는 conda 명령어를 이용하여 설치할 수 있습니다.
pip install ipywidgets
또는 conda를 이용하여 설치할 수 있습니다.
conda install -c conda-forge ipywidgets
Widgets
widgets은 일반적으로 Slider, Text Box 등의 컨트롤처럼 브라우저에 표시되는 이벤트성 python개체입니다. widgets을 사용하여 Jupyter Notebook에 인터렉티브 GUI를 구축할 수 있습니다. widgets framework를 사용하려면 ipywidgets를 import 해야 합니다.
import ipywidgets as widgets
widget은 코드 셀 아래의 출력 영역 안에 표시됩니다.
widgets.IntSlider()
display()를 사용하여 widget을 명시적으로 표시할 수도 있습니다.
w = widgets.IntSlider()
display(w)
동일한 위젯을 두 번 선언하면 프런트 엔드에 표시된 인스턴스가 서로 동기화된 상태로 유지됩니다.
sync_w = widgets.IntSlider()
display(sync_w)
display(sync_w)
close() Method를 호출하여 위젯을 닫을 수 있습니다.
Widget properties
widget의 value 속성을 이용하여 값을 조회하거나 변경 할 수 있습니다.
prop_w = widgets.IntSlider()
display(prop_w)
prop_w.value
Output:
47
prop_w.value = 35
Keys
value 이외에도 widget의 속성은 아래와 같이 조회할 수 있습니다.
prop_w.keys
Output:
['_dom_classes',
'_model_module',
'_model_module_version',
'_model_name',
'_view_count',
'_view_module',
'_view_module_version',
'_view_name',
'behavior',
'continuous_update',
'description',
'description_allow_html',
'disabled',
'layout',
'max',
'min',
'orientation',
'readout',
'readout_format',
'step',
'style',
'tabbable',
'tooltip',
'value']
prop_w.step
Output:
1
약식으로 widget선언과 동시에 속성값을 초기화
widgets.Text(value='Hello World!', disabled=True)
두 개의 widget 연결
link 또는 jslink 함수를 사용하여 두 속성을 함께 연결할 수 있습니다.
text_w = widgets.FloatText()
slider_w = widgets.FloatSlider()
display(text_w, slider_w)
mylink = widgets.jslink((text_w, 'value'), (slider_w, 'value'))
unlink 함수를 사용하면 widget 연결이 해제됩니다.
mylink.unlink()
'Tech & Development > Programming Languages' 카테고리의 다른 글
Pynecone 시작하기 (설치 및 환경구성) (0) | 2023.03.23 |
---|---|
ipywidgets widget 종류와 사용방법 (0) | 2023.03.03 |
[Python] 문자열을 숫자로 변환 (0) | 2023.01.25 |
[Python] 문자열에서 특정문자 제거 (0) | 2023.01.19 |
[Python] 자료형 - 리스트 (List) (0) | 2023.01.18 |
댓글
이 글 공유하기
다른 글
-
Pynecone 시작하기 (설치 및 환경구성)
Pynecone 시작하기 (설치 및 환경구성)
2023.03.23 -
ipywidgets widget 종류와 사용방법
ipywidgets widget 종류와 사용방법
2023.03.03 -
[Python] 문자열을 숫자로 변환
[Python] 문자열을 숫자로 변환
2023.01.25 -
[Python] 문자열에서 특정문자 제거
[Python] 문자열에서 특정문자 제거
2023.01.19