본문 바로가기

Software/Python

Jupyter Notebook에서 GUI 같은 느낌의 작업을 원하세요? ipywidgets

Jupyter Notebook을 Python 유저들이 많이 사용하시죠? 그런데 아주 가끔 간단히 슬라이드바나 버튼 등을 이용한 GUI 환경을 간편하게 쓸 수 있다면 좀 더 재미있겠는데~ 하고 생각할 때가 있을 겁니다. 그럴때 사용하는 것이 ipywidgets입니다. 워난 Documents가 잘 되어 있어서 그냥 간단하게 소개만 해보겠습니다.

매우 간단하게 저렇게 사용합니다.

value를 조회하거나 강제로 값을 선언할 수 있습니다.

Text 박스와 Slider인데요. 이 둘을 jslink로 엮어 버릴 수 있습니다.

해제할 때는 unlink~

이번에는 버튼이 눌러지면 어떤 기능을 실행하도록 준비해 줄 수 있습니다.

버튼을 클릭하면 특정 기능을 수행하는 거죠~

혹은 슬라이드바를 다수 연결해볼 수도 있구요~

위 예제는 간단하게 슬라이드를 잡고 움직이다가 놓으면 갱신할지, 바로 갱신하는지의 설정 차이를 보여줍니다.

이게 백미인데요. Python의 데코레이터를 이용해서 아주 간편하게 슬라이드를 구성할 수 있습니다.~

이렇게 해두면, color와 lw, freq를 GUI로 구성할 수 있습니다.

그러면 이렇게 만들 수 있는거죠~~~ 간단하죠^^

반응형