오늘은 주피터 노트북 테마를 변경하고 확장 기능까지 사용할 수 있는 방법을 다뤄보겠습니다.


주피터 노트북의 기본 구성은 다음과 같습니다.


flow


흰색 바탕에 가지런히 정리된 모습이 깔끔해 보이지만, 장시간 사용하면 눈에 피로가 오게 됩니다.


그리고 코드가 길어지면 스크롤 위아래로 움직이기도 번거로워집니다. 😢


그래서 저는 아래와 같이 테마확장 기능을 사용했습니다.


flow


이번 포스팅에서 설명하는 방식대로 하시면, 금방 설정하실 수 있으실 것입니다.


테마 변경



먼저 jupyterthemes를 설치해주세요.


pip install jupyterthemes


Jupyter Themes 모듈은 다양한 테마를 지원하고 있습니다.

jt -l # 가능한 테마 리스트 출력


위의 명령어를 입력하면 가능한 테마 리스트가 출력됩니다.


  • chesterish
    전체적으로 어두운 테마
  • grade3
    밝은 분위기의 테마
  • gruvboxd
    어두운 테마와 갈색 계열의 조합
  • gruvboxl
    노란 느낌의 테마
  • monokai
    개발자용 테마
  • oceans16
    파란 계열의 테마
  • onedork
    파란 계열의 테마
  • solarizedd
    초록 계열의 테마
  • solarizedl


사용 가능한 테마 리스트를 간단히 설명해보았습니다.


Tip. 추천 테마 4가지.


아래 보이는 4가지 테마는 제가 생각 했을 때 가장 괜찮아 보이는 테마입니다.
미리 보시고 가장 마음에 드시는 테마를 고르면 됩니다!

flow oceans16 테마


flow grade3 테마


flow monokai 테마


flow onedork 테마


마음에 드는 테마를 선택했다면 이제 아래 코드를 입력해서 간편하게 테마를 변경할 수 있습니다.


📌 테마 이름 뒤에 -T를 붙이지 않으면 툴바가 없어집니다.



jt -t (테마 이름) -T


테마가 변경이 안된다면 주피터 노트북을 새로 실행시키면 됩니다!!


그리고 테마를 기본으로 설정하고 싶다면 아래 명령어를 실행하면 됩니다.


jt- r #default theme으로 복귀

주피터 확장 기능 설치하기



우선 확장 프로그램을 설치해주세요.


pip

pip 으로 설치를 하실 경우에는 아래 명령어를 실행합니다.

pip install jupyter_contrib_nbextensions
jupyter contrib nbextension install --user


conda

conda로 설치를 하는 경우에는 아래 명령어를 실행합니다.

conda install -c conda-forge jupyter_contrib_nbextensions


확장 프로그램 설정하기



확장 프로그램을 설치하셨다면, 주피터 노트북을 실행시킵니다.

jupyter notebook


확장 기능 탭에 들어가는 방법은 두 가지입니다.

링크로 들어가기


http://localhost:8888/nbextensions


❗ local host의 주소에 따라 링크의 주소(8888)가 변경될 수 있습니다.


파일의 Edit에서 들어가기

flow

우선 화면 위에서 Edit을 클릭해 줍니다.


flow

그리고 nbextensions config를 누르시면 설정하는 곳으로 들어가게 됩니다.


확장 기능 탭에 들어가면 아래와 같은 화면이 보일 것 입니다.


flow


제가 활성화한 기능은 다음과 같습니다. 😃


  • Table of Contents (목차)
  • hinterland (자동완성)
  • Variable Inspector (변수 탐색기)
  • Codefolding (코드 접기)
  • Collapsible Headings (섹션 접기)
  • ExececuteTime (코드 실행 시간)


Table of Contents (목차)


flow


마크다운의 Heading 크기에 맞춰서 자동으로 목차가 생깁니다.

목차를 클릭하면 해당 위치로 가주기 때문에 매우 편리한 기능입니다.


hinterland (자동완성)


flow


주피터 노트북은 다른 IDE와 다르게 자동완성 기능이 없습니다.


확장 기능을 활성화 하면 알아 코드를 자동완성 을 시켜줍니다.


Variable Inspector (변수 탐색기)


flow


변수의 값을 볼 수 있기 때문에 중간 중간 디버깅 용도로 좋을 것 같습니다.


Collapsible Headings (섹션 접기)


flow

화살표 모양을 눌러서 섹션을 접으면 좀 더 깔끔하게 만들 수 있습니다.


ExececuteTime (코드 실행 시간)


flow


코드의 실행시간을 알려주는 기능입니다.


모델 학습할 때 시간 측정하기에 참 좋아보입니다.


이외에도 다양한 기능이 많습니다.


만약 더 유용한 기능을 찾게 된다면 이 포스트에 추가하겠습니다!