"If you want to use any of these extensions, feel free to use our [examples](https://github.com/FZJ-JSC/jupyter-jsc-notebooks) as a starting point."
"If you want to use any of these extensions, feel free to use our [examples](https://github.com/FZJ-JSC/jupyter-jsc-notebooks) as a starting point. \n",
"\n",
"You can list the currently installed extensions by running the command in the JupyterLab terminal: `jupyter labextension list`"
"The [LaTeX Extension](https://github.com/jupyterlab/jupyterlab-latex) is an extension for JupyterLab which allows for live-editing of LaTeX documents. \n",
"The [LaTeX Extension](https://github.com/jupyterlab/jupyterlab-latex) is an extension for JupyterLab which allows for live-editing of LaTeX documents. \n",
"[Here](https://annefou.github.io/jupyter_publish/03-latex/index.html) you can find a short example."
"[Here](https://annefou.github.io/jupyter_publish/03-latex/index.html) you can find a short example."
"Jupyter interactive notebook server extension that allows user to interact with environment modules before launching kernels. \n",
{
"The extension use Lmod's Python interface to accomplish module related task like loading, unloading, saving collection, etc."
"cell_type": "markdown",
"metadata": {
"toc-hr-collapsed": true,
"toc-nb-collapsed": true
},
"source": [
"## Ipydatawidgets"
]
]
},
},
{
{
"cell_type": "markdown",
"cell_type": "markdown",
"metadata": {},
"metadata": {},
"source": [
"source": [
"[Ipydatawidgets](https://github.com/vidartf/ipydatawidgets) is a set of widgets to help facilitate reuse of large datasets across different widgets, and different packages."
"Leveraging the Jupyter interactive widgets framework, ipympl enables the interactive features of matplotlib in the Jupyter notebook and in JupyterLab. \n",
"execution_count": null,
"Besides, the figure canvas element is a proper Jupyter interactive widget which can be positioned in interactive widget layouts. \n",
"metadata": {},
"Please read the [documentation](https://matplotlib.org/contents.html)."
"Plotly's Python graphing library makes interactive, publication-quality graphs. Examples of how to make line plots, scatter plots, area charts, bar charts, error bars, box plots, histograms, heatmaps, subplots, multiple-axes, polar charts, and bubble charts. \n",
"Please read the [documentation](https://plotly.com/python)."
]
]
},
},
{
{
"cell_type": "code",
"cell_type": "markdown",
"execution_count": null,
"metadata": {},
"metadata": {},
"outputs": [],
"source": [
"source": [
"import matplotlib.pyplot as plt\n",
"## Other Extensions usefull for Jupyter Users\n",
"from mpl_toolkits.mplot3d import axes3d\n",
"- jupyter_bokeh\n",
"\n",
"- jupyterlab-lsp\n",
"fig = plt.figure()\n",
"- jupyterlab_go_to_definition\n",
"ax = fig.add_subplot(111, projection='3d')\n",
"- jupyterlab_pyviz\n",
"\n",
"- bqplot\n",
"# Grab some test data.\n",
"- itkwidgets\n",
"X, Y, Z = axes3d.get_test_data(0.05)\n",
"- jupyterlab-dash\n",
"\n",
"- jupyterlab-gitlab\n",
"# Plot a basic wireframe.\n",
"- jupyterlab-control\n",
"ax.plot_wireframe(X, Y, Z, rstride=10, cstride=10)\n",
"- jupyterlab_iframe\n",
"\n",
"- jupyterlab-theme-toggle\n",
"fig.canvas.layout.max_width = '800px'\n",
"\n",
"\n",
"plt.show()"
"## Internal Extensions\n",
"- jupyterlab-datawidgets\n",
"- jupyterlab-server-proxy\n",
"- jupyterlab-system-monitor\n",
"- jupyterlab-topbar-extension\n",
"- pvlink"
]
]
},
},
{
{
...
@@ -462,65 +412,7 @@
...
@@ -462,65 +412,7 @@
"execution_count": null,
"execution_count": null,
"metadata": {},
"metadata": {},
"outputs": [],
"outputs": [],
"source": [
"source": []
"# When using the `widget` backend from ipympl,\n",
"# fig.canvas is a proper Jupyter interactive widget, which can be embedded in\n",
"# Layout classes like HBox and Vbox.\n",
"\n",
"# One can bound figure attributes to other widget values.\n",
"The JupyterLab [cell tags](https://github.com/jupyterlab/jupyterlab-celltags) extension enables users to easily add, view, and manipulate descriptive tags for notebook cells. \n",
"The extension includes the functionality to select all cells with a given tag, supporting the performance of any operation on those cells. \n",
"Click on the wrench Symbol on the left sidebar to use it. "
"[CodeFolding](https://github.com/ipython-contrib/jupyter_contrib_nbextensions/tree/master/src/jupyter_contrib_nbextensions/nbextensions/codefolding) adds codefolding functionality from CodeMirror to a codecell. \n",
"To use it click on the menu on \"Help\" -> \"Launch Classic Notebook\"."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"[Code Formatter](https://github.com/ryantam626/jupyterlab_code_formatter) allows you to format a Notebook for. \n",
"You can use it as shown below or you click on \"Format notebook\" at the top of your notebook. "
"With [RISE](https://rise.readthedocs.io/en/latest), a Jupyter notebook extension, you can instantly turn your jupyter notebook into a live reveal.js-based presentation. \n",
"To use it click on the menu on \"Help\" -> \"Launch Classic Notebook\"."
An [extension](https://github.com/dask/dask-labextension) to manage Dask clusters, as well as embed Dask's dashboard plots directly into JupyterLab panes.
An [extension](https://github.com/dask/dask-labextension) to manage Dask clusters, as well as embed Dask's dashboard plots directly into JupyterLab panes.
Watch [this](https://www.youtube.com/watch?feature=player_embedded&v=EX_voquHdk0) video until the end to unterstand how to use Dask in JupyterLab. At the moment we only offer to use the panels inside of JupyterLab.
Watch [this](https://www.youtube.com/watch?feature=player_embedded&v=EX_voquHdk0) video until the end to unterstand how to use Dask in JupyterLab. At the moment we only offer to use the panels inside of JupyterLab.
We have introduction notebooks for this extensions [here](https://gitlab.version.fz-juelich.de/jupyter4jsc/j4j_notebooks/tree/master/001-Extensions)(or open the gitlab extension on the left sidebar).
We have introduction notebooks for this extensions [here](https://gitlab.version.fz-juelich.de/jupyter4jsc/j4j_notebooks/tree/master/001-Extensions)(or open the gitlab extension on the left sidebar).
A [Table of Contents extension](https://github.com/jupyterlab/jupyterlab-toc) for JupyterLab. This auto-generates a table of contents in the left area when you have a notebook or markdown document open.
A [Table of Contents extension](https://github.com/jupyterlab/jupyterlab-toc) for JupyterLab. This auto-generates a table of contents in the left area when you have a notebook or markdown document open.
The entries are clickable, and scroll the document to the heading in question.
The entries are clickable, and scroll the document to the heading in question.
[Voilà](https://github.com/voila-dashboards/voila) turns Jupyter notebooks into standalone web applications.
[Voilà](https://github.com/voila-dashboards/voila) turns Jupyter notebooks into standalone web applications.
Unlike the usual HTML-converted notebooks, each user connecting to the Voilà tornado application gets a dedicated Jupyter kernel which can execute the callbacks to changes in Jupyter interactive widgets.
Unlike the usual HTML-converted notebooks, each user connecting to the Voilà tornado application gets a dedicated Jupyter kernel which can execute the callbacks to changes in Jupyter interactive widgets.
This extension allows you to render a Notebook with Voilà, so you can see how your Notebook will look with it.
This extension allows you to render a Notebook with Voilà, so you can see how your Notebook will look with it.
You can download a test notebook with the following command:
You can download a test notebook with the following command:
[Quick Open](https://github.com/parente/jupyterlab-quickopen) allows you to quickly open a file in JupyterLab by typing part of its name. Just click on the lens symbol at the left sidebar.
[Quick Open](https://github.com/parente/jupyterlab-quickopen) allows you to quickly open a file in JupyterLab by typing part of its name. Just click on the lens symbol at the left sidebar.
<spanstyle="color:darkorange">Takes a long time on HPC systems.</span>
<spanstyle="color:darkorange">Takes a long time on HPC systems.</span>
[Ipydatawidgets](https://github.com/vidartf/ipydatawidgets) is a set of widgets to help facilitate reuse of large datasets across different widgets, and different packages.
Plotly's Python graphing library makes interactive, publication-quality graphs. Examples of how to make line plots, scatter plots, area charts, bar charts, error bars, box plots, histograms, heatmaps, subplots, multiple-axes, polar charts, and bubble charts.
Please read the [documentation](https://plotly.com/python).
%% Cell type:markdown id: tags:
%% Cell type:markdown id: tags:
[MatplotLib](https://www.github.com/matplotlib/jupyter-matplotlib) enables the interactive features of matplotlib in Jupyterlab.
## Other Extensions usefull for Jupyter Users
Besides, the figure canvas element is a proper Jupyter interactive widget which can be positioned in interactive widget layouts.
- jupyter_bokeh
- jupyterlab-lsp
- jupyterlab_go_to_definition
- jupyterlab_pyviz
- bqplot
- itkwidgets
- jupyterlab-dash
- jupyterlab-gitlab
- jupyterlab-control
- jupyterlab_iframe
- jupyterlab-theme-toggle
%% Cell type:code id: tags:
## Internal Extensions
- jupyterlab-datawidgets
``` python
- jupyterlab-server-proxy
# Enable the matplotlib widget
- jupyterlab-system-monitor
%matplotlib widget
- jupyterlab-topbar-extension
```
- pvlink
%% Cell type:code id: tags:
%% Cell type:code id: tags:
``` python
``` python
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import axes3d
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
# Grab some test data.
X, Y, Z = axes3d.get_test_data(0.05)
# Plot a basic wireframe.
ax.plot_wireframe(X, Y, Z, rstride=10, cstride=10)
fig.canvas.layout.max_width = '800px'
plt.show()
```
```
%% Cell type:code id: tags:
``` python
# When using the `widget` backend from ipympl,
# fig.canvas is a proper Jupyter interactive widget, which can be embedded in
# Layout classes like HBox and Vbox.
# One can bound figure attributes to other widget values.
import numpy as np
from ipywidgets import HBox, FloatSlider
plt.ioff()
plt.clf()
slider = FloatSlider(
orientation='vertical',
value=1.0,
min=0.02,
max=2.0
)
fig = plt.figure(3)
x = np.linspace(0, 20, 500)
lines = plt.plot(x, np.sin(slider.value * x))
def update_lines(change):
lines[0].set_data(x, np.sin(change.new * x))
fig.canvas.draw()
fig.canvas.flush_events()
slider.observe(update_lines, names='value')
HBox([slider, fig.canvas])
```
%% Cell type:markdown id: tags:
## NBDime
%% Cell type:markdown id: tags:
[NBDime](https://github.com/jupyter/nbdime) provides tools for diffing and merging of Jupyter Notebooks.
The JupyterLab [cell tags](https://github.com/jupyterlab/jupyterlab-celltags) extension enables users to easily add, view, and manipulate descriptive tags for notebook cells.
The extension includes the functionality to select all cells with a given tag, supporting the performance of any operation on those cells.
Click on the wrench Symbol on the left sidebar to use it.
[CodeFolding](https://github.com/ipython-contrib/jupyter_contrib_nbextensions/tree/master/src/jupyter_contrib_nbextensions/nbextensions/codefolding) adds codefolding functionality from CodeMirror to a codecell.
To use it click on the menu on "Help" -> "Launch Classic Notebook".
%% Cell type:markdown id: tags:
[Code Formatter](https://github.com/ryantam626/jupyterlab_code_formatter) allows you to format a Notebook for.
You can use it as shown below or you click on "Format notebook" at the top of your notebook.
With [RISE](https://rise.readthedocs.io/en/latest), a Jupyter notebook extension, you can instantly turn your jupyter notebook into a live reveal.js-based presentation.
To use it click on the menu on "Help" -> "Launch Classic Notebook".