Skip to content

Commit

Permalink
Remplacer Plotnine par Altair
Browse files Browse the repository at this point in the history
  • Loading branch information
plstonge committed May 15, 2023
1 parent 9f066e7 commit 0f368e0
Show file tree
Hide file tree
Showing 2 changed files with 44 additions and 34 deletions.
38 changes: 22 additions & 16 deletions extras/solutions/vega-datasets2.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -315,7 +315,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"a) Importez le module Plotnine sous le nom `p9`."
"a) Importez le module Altair sous le nom `alt`."
]
},
{
Expand All @@ -324,7 +324,7 @@
"metadata": {},
"outputs": [],
"source": [
"import plotnine as p9"
"import altair as alt"
]
},
{
Expand Down Expand Up @@ -449,13 +449,14 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"h) Enfin, créez un graphique `ggplot()` avec `p9` de telle sorte que :\n",
"h) Enfin, créez un graphique Altair avec `alt` de telle sorte que :\n",
"* Les `Mois` soient en axe des `x`.\n",
"* Les `Valeur` soient en axe des `y`.\n",
"* Les `Valeurs` influencent la couleur (`color`).\n",
"* Une courbe s'affiche pour chaque type de `Valeurs`.\n",
"* Les couleurs `red` et `black` soit assignées via une liste dans `p9.scale_color_manual()`.\n",
"* Un titre soit ajouté avec `ggtitle()`."
"* Une courbe de couleur s'affiche pour chaque type de `Valeurs`.\n",
" * Les couleurs `red` et `black` seront assignées via une liste\n",
" `range` dans `alt.Scale()` selon le `domain` `Basses` et `Hautes`.\n",
"* Un titre soit ajouté avec `properties(title=)`.\n",
"* Permettre une navigation interactive dans le graphique."
]
},
{
Expand All @@ -464,14 +465,19 @@
"metadata": {},
"outputs": [],
"source": [
"(p9.ggplot(data=valeurs_finales,\n",
" mapping=p9.aes(x='Mois',\n",
" y='Valeur',\n",
" color='Valeurs'))\n",
" + p9.geom_line()\n",
" + p9.scale_color_manual(['red', 'black'])\n",
" + p9.ggtitle(\"Valeurs basses et hautes du S&P 500 selon le mois\")\n",
")"
"couleurs = alt.Scale(\n",
" domain=['Basses', 'Hautes'],\n",
" range=['red', 'black'],\n",
")\n",
"\n",
"alt.Chart(valeurs_finales).mark_line().encode(\n",
" x=alt.X('Mois'),\n",
" y=alt.Y('Valeur'),\n",
" color=alt.Color('Valeurs', scale=couleurs),\n",
" tooltip=['Valeurs', 'Valeur'],\n",
").properties(\n",
" title='Valeurs basses et hautes du S&P 500 selon le mois',\n",
").interactive()"
]
},
{
Expand Down Expand Up @@ -527,7 +533,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.10"
"version": "3.10.5"
}
},
"nbformat": 4,
Expand Down
40 changes: 22 additions & 18 deletions extras/vega-datasets2.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -315,17 +315,15 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"a) Importez le module Plotnine sous le nom `p9`."
"a) Importez le module Altair sous le nom `alt`."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"###"
]
"source": []
},
{
"cell_type": "markdown",
Expand Down Expand Up @@ -449,13 +447,14 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"h) Enfin, créez un graphique `ggplot()` avec `p9` de telle sorte que :\n",
"h) Enfin, créez un graphique Altair avec `alt` de telle sorte que :\n",
"* Les `Mois` soient en axe des `x`.\n",
"* Les `Valeur` soient en axe des `y`.\n",
"* Les `Valeurs` influencent la couleur (`color`).\n",
"* Une courbe s'affiche pour chaque type de `Valeurs`.\n",
"* Les couleurs `red` et `black` soit assignées via une liste dans `p9.scale_color_manual()`.\n",
"* Un titre soit ajouté avec `ggtitle()`."
"* Une courbe de couleur s'affiche pour chaque type de `Valeurs`.\n",
" * Les couleurs `red` et `black` seront assignées via une liste\n",
" `range` dans `alt.Scale()` selon le `domain` `Basses` et `Hautes`.\n",
"* Un titre soit ajouté avec `properties(title=)`.\n",
"* Permettre une navigation interactive dans le graphique."
]
},
{
Expand All @@ -464,14 +463,19 @@
"metadata": {},
"outputs": [],
"source": [
"(p9.ggplot(data=valeurs_finales,\n",
" mapping=p9.aes(x='###',\n",
" y='###',\n",
" color='###'))\n",
" + p9.geom_###()\n",
" + p9.###(['red', 'black'])\n",
" + p9.###(\"Valeurs basses et hautes du S&P 500 selon le mois\")\n",
")"
"couleurs = alt.###(\n",
" ###=['Basses', 'Hautes'],\n",
" ###=['red', 'black'],\n",
")\n",
"\n",
"alt.###(valeurs_finales).mark_###().encode(\n",
" x=alt.X('###'),\n",
" y=alt.Y('###'),\n",
" color=alt.Color('###', scale=###),\n",
" tooltip=['Valeurs', 'Valeur'],\n",
").###(\n",
" ###='Valeurs basses et hautes du S&P 500 selon le mois',\n",
").###()"
]
},
{
Expand Down Expand Up @@ -527,7 +531,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.10"
"version": "3.10.5"
}
},
"nbformat": 4,
Expand Down

0 comments on commit 0f368e0

Please sign in to comment.