-
Notifications
You must be signed in to change notification settings - Fork 13
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Moved examples to separate repo, added new notebook for testing purpo…
…ses.
- Loading branch information
1 parent
2d87cb6
commit 15de24e
Showing
6 changed files
with
356 additions
and
1,978 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,354 @@ | ||
{ | ||
"cells": [ | ||
{ | ||
"cell_type": "code", | ||
"execution_count": 3, | ||
"metadata": {}, | ||
"outputs": [], | ||
"source": [ | ||
"%load_ext pretty_jupyter" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": 65, | ||
"metadata": {}, | ||
"outputs": [ | ||
{ | ||
"data": { | ||
"text/markdown": [ | ||
"\n", | ||
"# Introduction\n", | ||
"\n", | ||
"The purpose of this notebook is only to test functionality of the Pretty Jupyter.\n", | ||
"\n", | ||
"# Chapter 1: Tabs\n", | ||
"<span class='pretty-jupyter-token tabset tabset-pills' style='display: none;'></span>\n", | ||
"\n", | ||
"First we will test tabsets together with maths. We can clearly see that no math symbol is leaking.\n", | ||
"\n", | ||
"## Tab 1\n", | ||
"\n", | ||
"First tab.\n", | ||
"\n", | ||
"## Tab 2\n", | ||
"\n", | ||
"Second tab. This tab contains some math symbols, such as inline math: $a = 5$.\n", | ||
"\n", | ||
"Another symbol:\n", | ||
"\n", | ||
"$$a \\cdot a^2 = \\frac{a^5}{a^2} = a^3 = 125$$\n", | ||
"\n", | ||
"## Tab 3\n", | ||
"\n", | ||
"Tab 3." | ||
], | ||
"text/plain": [ | ||
"<IPython.core.display.Markdown object>" | ||
] | ||
}, | ||
"execution_count": 65, | ||
"metadata": {}, | ||
"output_type": "execute_result" | ||
} | ||
], | ||
"source": [ | ||
"%%jinja markdown\n", | ||
"\n", | ||
"# Introduction\n", | ||
"\n", | ||
"The purpose of this notebook is only to test functionality of the Pretty Jupyter.\n", | ||
"\n", | ||
"# Chapter 1: Tabs\n", | ||
"[//]: <> (-.- tabset tabset-pills)\n", | ||
"\n", | ||
"First we will test tabsets together with maths. We can clearly see that no math symbol is leaking.\n", | ||
"\n", | ||
"## Tab 1\n", | ||
"\n", | ||
"First tab.\n", | ||
"\n", | ||
"## Tab 2\n", | ||
"\n", | ||
"Second tab. This tab contains some math symbols, such as inline math: $a = 5$.\n", | ||
"\n", | ||
"Another symbol:\n", | ||
"\n", | ||
"$$a \\cdot a^2 = \\frac{a^5}{a^2} = a^3 = 125$$\n", | ||
"\n", | ||
"## Tab 3\n", | ||
"\n", | ||
"Tab 3." | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": 10, | ||
"metadata": {}, | ||
"outputs": [ | ||
{ | ||
"data": { | ||
"text/markdown": [ | ||
"\n", | ||
"# Chapter 2: Jinja Markdown\n", | ||
"\n", | ||
"Jinja Markdown is a great way how to combine variables together with Markdown." | ||
], | ||
"text/plain": [ | ||
"<IPython.core.display.Markdown object>" | ||
] | ||
}, | ||
"execution_count": 10, | ||
"metadata": {}, | ||
"output_type": "execute_result" | ||
} | ||
], | ||
"source": [ | ||
"%%jinja markdown\n", | ||
"\n", | ||
"# Chapter 2: Jinja Markdown\n", | ||
"\n", | ||
"Jinja Markdown is a great way how to combine variables together with Markdown." | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": 11, | ||
"metadata": {}, | ||
"outputs": [], | ||
"source": [ | ||
"import pandas as pd\n", | ||
"\n", | ||
"data = pd.DataFrame({\n", | ||
" \"A\": [1, 2, 3, 4],\n", | ||
" \"B\": [\"One\", \"Two\", \"Three\", \"Four\"]\n", | ||
"})" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": 49, | ||
"metadata": {}, | ||
"outputs": [ | ||
{ | ||
"data": { | ||
"text/markdown": [ | ||
"\n", | ||
"Using Jinja Markdown, we can show the table as part of our markdown text:\n", | ||
"\n", | ||
"<details>\n", | ||
"\n", | ||
"<table border=\"1\" class=\"dataframe\">\n", | ||
" <thead>\n", | ||
" <tr style=\"text-align: right;\">\n", | ||
" <th></th>\n", | ||
" <th>A</th>\n", | ||
" <th>B</th>\n", | ||
" </tr>\n", | ||
" </thead>\n", | ||
" <tbody>\n", | ||
" <tr>\n", | ||
" <th>0</th>\n", | ||
" <td>1</td>\n", | ||
" <td>One</td>\n", | ||
" </tr>\n", | ||
" <tr>\n", | ||
" <th>1</th>\n", | ||
" <td>2</td>\n", | ||
" <td>Two</td>\n", | ||
" </tr>\n", | ||
" <tr>\n", | ||
" <th>2</th>\n", | ||
" <td>3</td>\n", | ||
" <td>Three</td>\n", | ||
" </tr>\n", | ||
" <tr>\n", | ||
" <th>3</th>\n", | ||
" <td>4</td>\n", | ||
" <td>Four</td>\n", | ||
" </tr>\n", | ||
" </tbody>\n", | ||
"</table>\n", | ||
"\n", | ||
"</details>" | ||
], | ||
"text/plain": [ | ||
"<IPython.core.display.Markdown object>" | ||
] | ||
}, | ||
"execution_count": 49, | ||
"metadata": {}, | ||
"output_type": "execute_result" | ||
} | ||
], | ||
"source": [ | ||
"%%jinja markdown\n", | ||
"\n", | ||
"Using Jinja Markdown, we can show the table as part of our markdown text:\n", | ||
"\n", | ||
"<details>\n", | ||
"\n", | ||
"{{ data.to_html() }}\n", | ||
"\n", | ||
"</details>" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": 15, | ||
"metadata": {}, | ||
"outputs": [], | ||
"source": [ | ||
"a = 10" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": 66, | ||
"metadata": {}, | ||
"outputs": [ | ||
{ | ||
"data": { | ||
"text/markdown": [ | ||
"\n", | ||
"We can also combine variables and math symbols thanks to Jinja Markdown and create more complex expressions, such as the following:\n", | ||
"\n", | ||
"\n", | ||
"<details>\n", | ||
"\n", | ||
"$$\n", | ||
"\n", | ||
"\\begin{align}\n", | ||
"\n", | ||
"a &= 10 \\\\\n", | ||
"\\frac{a^{10}}{a^8} &= \\frac{ 10^{10} }{ 10^8 } \\\\\n", | ||
"\\frac{ 10^{10} }{ 10^8 } &= 10^{2} \\\\\n", | ||
"10^{2} &= 100 \\\\\n", | ||
"\n", | ||
"\\end{align}\n", | ||
"$$\n", | ||
"\n", | ||
"</details>" | ||
], | ||
"text/plain": [ | ||
"<IPython.core.display.Markdown object>" | ||
] | ||
}, | ||
"execution_count": 66, | ||
"metadata": {}, | ||
"output_type": "execute_result" | ||
} | ||
], | ||
"source": [ | ||
"%%jinja markdown\n", | ||
"\n", | ||
"We can also combine variables and math symbols thanks to Jinja Markdown and create more complex expressions, such as the following:\n", | ||
"\n", | ||
"\n", | ||
"<details>\n", | ||
"\n", | ||
"$$\n", | ||
"\n", | ||
"\\begin{align}\n", | ||
"\n", | ||
"a &= {{a}} \\\\\n", | ||
"\\frac{a^{10}}{a^8} &= \\frac{ {{a}}^{10} }{ {{a}}^8 } \\\\\n", | ||
"\\frac{ {{a}}^{10} }{ {{a}}^8 } &= {{a}}^{2} \\\\\n", | ||
"{{a}}^{2} &= {{ a ** 2 }} \\\\\n", | ||
"\n", | ||
"\\end{align}\n", | ||
"$$\n", | ||
"\n", | ||
"</details>" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": 63, | ||
"metadata": {}, | ||
"outputs": [], | ||
"source": [ | ||
"import matplotlib.pyplot as plt\n", | ||
"import seaborn as sns\n", | ||
"sns.set_theme()\n", | ||
"\n", | ||
"import base64\n", | ||
"from io import BytesIO\n", | ||
"\n", | ||
"IMG_FORMAT = r\"<img src='data:image/png;base64,{encoded}'>'\"\n", | ||
"\n", | ||
"tmpfile = BytesIO()\n", | ||
"\n", | ||
"fig, ax = plt.subplots()\n", | ||
"sns.countplot(x=data[\"A\"], ax=ax).set(title=\"Example Figure\")\n", | ||
"fig.savefig(tmpfile, format=\"png\")\n", | ||
"plt.close()\n", | ||
"\n", | ||
"encoded = IMG_FORMAT.format(encoded=base64.b64encode(tmpfile.getvalue()).decode('utf-8'))" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": 64, | ||
"metadata": {}, | ||
"outputs": [ | ||
{ | ||
"data": { | ||
"text/markdown": [ | ||
"\n", | ||
"We can even include matplotlib figures in-between our markdown, although this is a bit hardcore.\n", | ||
"\n", | ||
"**Watch this:**\n", | ||
"\n", | ||
"<img src='data:image/png;base64,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'>'" | ||
], | ||
"text/plain": [ | ||
"<IPython.core.display.Markdown object>" | ||
] | ||
}, | ||
"execution_count": 64, | ||
"metadata": {}, | ||
"output_type": "execute_result" | ||
} | ||
], | ||
"source": [ | ||
"%%jinja markdown\n", | ||
"\n", | ||
"We can even include matplotlib figures in-between our markdown, although this is a bit hardcore.\n", | ||
"\n", | ||
"**Watch this:**\n", | ||
"\n", | ||
"{{ encoded }}\n", | ||
"\n" | ||
] | ||
} | ||
], | ||
"metadata": { | ||
"code_folding": "show", | ||
"kernelspec": { | ||
"display_name": "Python 3.9.13 ('venv': venv)", | ||
"language": "python", | ||
"name": "python3" | ||
}, | ||
"language_info": { | ||
"codemirror_mode": { | ||
"name": "ipython", | ||
"version": 3 | ||
}, | ||
"file_extension": ".py", | ||
"mimetype": "text/x-python", | ||
"name": "python", | ||
"nbconvert_exporter": "python", | ||
"pygments_lexer": "ipython3", | ||
"version": "3.9.13" | ||
}, | ||
"orig_nbformat": 4, | ||
"vscode": { | ||
"interpreter": { | ||
"hash": "bcd7e97cf71e998a93ec80db15725ed4a4806c1de3630361ecb7124b538cb899" | ||
} | ||
} | ||
}, | ||
"nbformat": 4, | ||
"nbformat_minor": 2 | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters