데보션앱 소개페이지 바로가기
로그인 선택

신고하기

CLOSE
신고사유 (대표 사유 1개)
상세내용 (선택)
0/200
  • 신고한 게시글은 더 이상 보이지 않습니다.
  • 이용약관과 운영정책에 따라 신고사유에 해당하는지 검토 후 조치됩니다.
  • 허위 신고인 경우, 신고자의 서비스 이용이 제한될 수 있으니 유의하시어 신중하게 신고해 주세요.
(이 회원이 작성한 모든 댓글과 커뮤니티 게시물이 보이지 않고, 알림도 오지 않습니다.)

미리보기

커뮤니티

      1,234

      badge 23.06.15

      글 등록

      카테고리를 선택해주세요.

      DEVOTEE를 활성화 시키면
      지금 작성한 커뮤니티 글에 대해 1개의 댓글을 달아줍니다.

      버튼을 누르면 글 수정 시 ChatGPT가 작성한 댓글이 수정됩니다.

      임시저장함에 저장되었습니다. 저장일시 : 2022.5.17 14:29:08

      임시저장함

      제목을 선택하시면 이어서 작성이 가능하며,
      최대 20건까지 저장합니다.
      컨텐츠 유형, 제목, 저장일시, 삭제로 이뤄진 임시저장 목록
      컨텐츠 유형 제목 저장일 삭제

      데보션 블로그 게재 요청

      CLOSE
      • *
      • *

      본인인증

      효율적인 데보션 서비스 이용 및
      고객님의 소중한 개인정보보호를 위해
      본인인증을 진행해주세요. 본인인증 미 진행 시 로그인이 제한됩니다.
      본인인증 실패

      본인인증 로그인에 실패하였습니다.
      회원이 아니시거나 본인인증 등록이
      완료되지 않은 사용자입니다.

      회원정보 연결

      Jupyter Notebook 인터렉티브(interactive) 기능 추가 - ipywidgets

      One 23.04.11
      5,744 23 1

      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()

      img

      display()를 사용하여 widget을 명시적으로 표시할 수도 있습니다.

      w = widgets.IntSlider()
      display(w)

      img

      동일한 위젯을 두 번 선언하면 프런트 엔드에 표시된 인스턴스가 서로 동기화된 상태로 유지됩니다.

      sync_w = widgets.IntSlider()
      display(sync_w)
      display(sync_w)

      img

      close() Method를 호출하여 위젯을 닫을 수 있습니다.

      img


      Widget properties

      widget의 value 속성을 이용하여 값을 조회하거나 변경 할 수 있습니다.

      prop_w = widgets.IntSlider()
      display(prop_w)
      prop_w.value

      Output:

      47

      img

      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)

      img


      두 개의 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'))

      img

      unlink 함수를 사용하면 widget 연결이 해제됩니다.

      mylink.unlink()

      댓글 0

      DEVOTEE를 활성화 시키면
      지금 작성한 댓글에 AI가 댓글을 달아줍니다.

      One 님의 최신 블로그

      더보기
      동영상 기고하기