Conhecendo o JupyterLab
O que é JupyterLab?
Na Ciência de Dados, uma das ferramentas ideais para visualizar e acompanhar o progresso do nosso projeto é o Jupyter Notebook.
O JupyterLab é uma versão mais moderna do Jupyter Notebook e provavelmente vai substituí-lo a longo prazo. Uma das vantagens do JupyterLab é a possibilidade de utilizar extensões.
As extensões do JupyterLab permitem que você coloque outras funcionalidades no seu Jupyter Notebook, deixando-o personalizado. Além disso, a versão mais recente do JupyterLab, a versão 3, já vem com algumas dessas extensões que foram criadas em versões anteriores de maneira nativa.
Vantagens do JupyterLab
Algumas das vantagens do JupyterLab 3 em relação ao Jupyter Notebook padrão:
- Permite a criação de abas para acesso a outras funcionalidades não somente de Notebooks, como arquivos txt, acesso ao terminal, acesso a documentação de pacotes, entre outros
- Divisórias de tela para acesso a mais de uma aba na tela ao mesmo tempo
- Permite a visualização em modo escuro
- Permite a instalação de extensões
- Permite a mudança de maneira fácil do tamanho da fonte de forma separada para os textos em Markdown, células de código e output
- Vem com um sumário para navegar entre os trechos do código de maneira rápida e prática (essa funcionalidade era uma extensão em versões anteriores do JupyterLab e agora é nativa na versão 3)
- Debugger usado diretamente no Notebook
Uma das extensões do JupyterLab que facilita bastante na organização do Notebook é a Collapsible Headings. Essa extensão permite agruparmos as seções do nosso Notebook para esconder ou expandir as seções. Tanto o sumário quanto essa extensão são funcionalidades muito parecidas com as que vemos nos Jupyter Notebooks do Google Collaboratory.
O JupyterLab permite a customização da visualização, inclusive com a possibilidade de alternar a tela entre o tema Dark (escuro) e Light (claro).Para mudar o tema e o tamanho da fonte em diferentes partes do Notebook, basta selecionar a aba Settings do menu superior e ver as opções da seção JupyterLab Theme.
Além disso, há a possibilidade de ordenar as informações em tela de acordo com a necessidade do(a) usuário(a). Tudo isso pode ser configurado da forma como desejar com Drag and Drop (arraste do mouse).
Na imagem a seguir podemos ver o sumário de navegação no lado esquerdo, as seções com possibilidade de esconder nos títulos do notebook, documentos csv com opção de seleção do separador, para ser visto diretamente como uma tabela na parte superior direita e arquivo txt na parte inferior direita, todos abertos na mesma página. Vemos também o Dark Mode.
Na imagem a seguir, vemos o tema Light padrão, o acesso rápido à documentação bastando clicar no código. Também é possível visualizar o sumário de uma forma diferente, com as células de forma visual e a opção de acrescentar tags em células para conseguir filtrá-las. O acesso à criação de tags é feito a partir das engrenagens na parte superior direita da imagem.
Instalando o JupyterLab
Para instalarmos a versão mais recente do JupyterLab, precisamos do Python instalado no computador. Podemos instalar através do gerenciador de pacotes pip ou através do gerenciador conda do Anaconda.
Para instalarmos através do pip, digitamos o seguinte comando no nosso terminal do sistema operacional:
pip install jupyterlab==3.0.14 --user
Utilizando o prompt conda, escrevemos:
conda install -c conda-forge jupyterlab=3.0.14
Acessar extensões no JupyterLab
Para ter acesso às extensões, como a Collapsible Headings ou alguma outra que você tenha interesse, você precisa instalar o Node.JS no seu computador, assim como o gerenciador de pacotes npm. No site https://nodejs.org/en/ você tem acesso rápido ao instalador do node.js, que já instala o npm no processo de instalação.
Feito isso, o seu JupyterLab estará atualizado e pronto para instalação de extensões. Basta você ir até a aba de extensões e pressionar o botão Enable para habilitar a instalação. Você pode procurar e instalar as extensões a partir dessa aba de uma forma bem parecida com o VSCode, caso já tenha utilizado.
Algumas das extensões que podem ser utilizadas são:
- Inspetor de variáveis: Serve para ter informações sobre as variáveis do nosso código.
Mais informações no link: https://github.com/lckr/jupyterlab-variableInspector
- JupyterLab Matplotlib: Serve para deixar os gráficos Matplotlib interativos.
Mais informações no link: https://github.com/matplotlib/ipympl
- Monitor de sistema JupyterLab: Serve para checar o uso de memória e CPU do seu Notebook.
Mais informações no link: https://github.com/jtpio/jupyterlab-system-monitor
Debugger
Para utilizar o Debugger, precisamos instalar um novo Kernel. Para instalar um Kernel no ambiente Anaconda, precisamos executar o comando:
conda create -n jupyterlab-debugger -c conda-forge jupyterlab=3 xeus-python
conda activate jupyterlab-debugger
Feito isso, podemos ativar o Kernel e começar a utilizá-lo.
Na imagem a seguir vemos a tela mostrando a utilização do Debugger no JupyterLab, as setas indicam os pontos de interrupção do código para depuração, na caixa no canto inferior direito há o bloco de código que está sendo depurado. As outras marcações são botões para ativar o Debugger e mostrar as informações à direita.
O que achou das vantagens?
Deu pra ver que o JupyterLab tem muitas vantagens e opções de personalização para montarmos um ambiente único, com nosso gosto. O que está esperando para aproveitar essas vantagens que ele oferece? É bastante simples a instalação e a forma de utilizar. Personalize o seu Notebook do jeitinho que você gosta para agilizar os seus projetos em Data Science.