{ "cells": [ { "cell_type": "markdown", "source": [ "# Import" ], "metadata": { "collapsed": false }, "id": "5e7a29153fb40cd" }, { "cell_type": "code", "source": [ "import pandas as pd\n", "from plotnine import ggplot, aes, geom_boxplot, stat_boxplot, theme, labs, element_blank, scale_color_manual, scale_fill_manual, geom_jitter, theme_gray\n", "import matplotlib.pyplot as plt\n", "from matplotlib.colors import to_rgba\n", "import seaborn as sns\n", "import plotly.express as px" ], "metadata": { "collapsed": false, "ExecuteTime": { "end_time": "2026-04-09T13:16:04.741003Z", "start_time": "2026-04-09T13:16:04.055170Z" } }, "id": "839093e1b76562d9", "outputs": [], "execution_count": 1 }, { "metadata": {}, "cell_type": "markdown", "source": "", "id": "3e69a9519493d086" }, { "cell_type": "markdown", "source": [ "# Data" ], "metadata": { "collapsed": false }, "id": "9d96edb3d578ee58" }, { "cell_type": "code", "source": [ "data_toy = pd.read_csv(\"toy.csv\")\n", "data_toy[\"austrian\"] = data_toy[\"austrian\"].astype(bool)\n", "data_toy[\"marital_status\"] = pd.Categorical(data_toy[\"marital_status\"], categories=[\"single\", \"divorced\", \"married\"])\n", "data_toy[\"age_cat\"] = pd.Categorical(data_toy[\"age_cat\"], categories = [\"child\", \"adolescent\", \"adult\"], ordered = True)\n", "\n", "data_toy_plot = data_toy[[\"marital_status\", \"year_birth\"]].dropna()\n", "data_toy_plot.head()" ], "metadata": { "collapsed": false, "ExecuteTime": { "end_time": "2026-04-09T13:16:04.765340Z", "start_time": "2026-04-09T13:16:04.742680Z" } }, "id": "70a6f9aa6318fdce", "outputs": [ { "data": { "text/plain": [ " marital_status year_birth\n", "0 divorced 1990.0\n", "1 single 2009.0\n", "2 single 2005.0\n", "3 single 2019.0\n", "4 married 1930.0" ], "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
marital_statusyear_birth
0divorced1990.0
1single2009.0
2single2005.0
3single2019.0
4married1930.0
\n", "
" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "execution_count": 2 }, { "cell_type": "markdown", "source": [ "# Plotnine\n", "\n", "Tries to immitate ggplot, not my favourite." ], "metadata": { "collapsed": false }, "id": "dd4e83e99a879871" }, { "cell_type": "code", "source": [ "plot = (ggplot(data_toy_plot, aes(x=0, y = \"year_birth\"))\n", " + geom_boxplot(fill = \"black\", alpha=0.2)\n", " + stat_boxplot(geom = \"errorbar\")\n", " + geom_jitter(width=0.2, color=\"black\", alpha=0.5)\n", " + labs(title = \"Year of Birth\", x = \"\", y = \"\")\n", " + theme_gray(base_size=6)\n", " + theme(axis_text_x=element_blank(),\n", " axis_ticks_major_x=element_blank(),\n", " panel_grid_major_x=element_blank(),\n", " panel_grid_minor_x=element_blank(),\n", " figure_size=(1.5, 2))\n", " )\n", " \n", "plot" ], "metadata": { "collapsed": false, "ExecuteTime": { "end_time": "2026-04-09T13:16:05.123743Z", "start_time": "2026-04-09T13:16:04.766472Z" } }, "id": "9f74e560963df80f", "outputs": [ { "data": { "image/png": "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", "text/plain": [ "" ] }, "execution_count": 3, "metadata": { "image/png": { "width": 150, "height": 200 } }, "output_type": "execute_result" } ], "execution_count": 3 }, { "cell_type": "code", "source": [ "plot = (ggplot(data_toy_plot, aes(x = \"marital_status\", y = \"year_birth\", color = \"marital_status\", fill=\"marital_status\"))\n", " + geom_boxplot(alpha=0.2)\n", " + stat_boxplot(geom = \"errorbar\")\n", " + geom_jitter(width=0.2, alpha=0.5)\n", " + scale_color_manual(name=None, values = {\"single\": \"darkgreen\", \"divorced\": \"darkred\", \"married\": \"darkblue\"})\n", " + scale_fill_manual(values = {\"single\": \"darkgreen\", \"divorced\": \"darkred\", \"married\": \"darkblue\"})\n", " + labs(title = \"Year of Birth\", x = \"\", y = \"\")\n", " + theme_gray(base_size=6)\n", " + theme(figure_size=(4.5, 2),\n", " legend_position=\"none\")\n", " )\n", "\n", "plot" ], "metadata": { "collapsed": false, "ExecuteTime": { "end_time": "2026-04-09T14:31:44.653639Z", "start_time": "2026-04-09T14:31:44.488762Z" } }, "id": "96b070716c363d19", "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA4QAAAGQCAYAAAD2lq6fAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAB7CAAAewgFu0HU+AABNx0lEQVR4nO3deXxU5d3///fMZGYyk0ky2UPYQgIEAaVoFVoXrFQr1dZqq7VCv2rV3l/rUtu7tvettW71+7u1t7bVilsfN/QWsdoFqxStSkVbW1EqKGEPAVmy75lMMts5vz+QkZCAQULOJOf1fDx4ZGbONed8Tk5ykfec61zHYZqmKQAAAACA7TitLgAAAAAAYA0CIQAAAADYFIEQAAAAAGyKQAgAAAAANkUgBAAAAACbIhACAAAAgE0RCAEAAADApgiEAAAAAGBTBEIAAI6RNWvW6Oyzz1Z+fr4cDoc+9alPHZPt3HHHHXI4HFq1atWgrvfMM8+Uw+EY1HUCAFILgRAAcExddNFFcjgceuCBBw7Z5p133pHb7daECRPU0dExhNUdOx0dHTrvvPP09ttv69JLL9Xtt9+u//t//+9h37Nz5045HI4+/3w+nyZNmqTrrrtOu3fvHrQar7jiCjkcDu3cuXPQ1gkAGF7SrC4AADCyPfHEE3rrrbd0yy236Oyzz9bxxx/fa3k4HNaCBQtkGIaefPJJZWVlWVTp4Hr77bfV0NCge+65R7fccssRvTc7O1s33XRT8nlzc7Nef/11LVy4UL///e/17rvvavTo0cnl119/vS699FKNGzdusMoHANgEgRAAcEzl5eVp0aJFmjdvnubPn6933nlHXq83ufzf//3ftXXrVt1yyy067bTTLKx0cNXU1EiSSkpKjvi9wWBQd9xxR5/Xv/zlL+uFF17QE0880Wt5fn6+8vPzP2mpAAAbY8goAOCY+8IXvqDrr79e69ev13/+538mX1+xYoUeffRRnXTSSbrjjjsUj8e1cOFCzZ49W1lZWfL7/Zo5c6Z+9atfyTCMPutdvHixvvrVr6qsrEw+n09ZWVk69dRTtWTJkn7r2H9NXDQa1V133aWKigp5vV5dccUVA9qPlStX6txzz1Vubq68Xq8mT56s//iP/1B7e3uyzf5hn5dffrkk6corr0wO/Vy8ePHAv2n9OPvssyVJjY2NvV4/1DWEDodDZ555purq6nT11Vdr9OjRcrlcWrx4sRwOh37zm99IkiZMmJCssbS0tM924/G4/t//+3+aNGmSvF6vxo4dqx/96EeKRqNHtT8AAOtxhhAAMCTuu+8+rVy5Ur/4xS903nnnacaMGfrWt74lv9+vp556SpJ0/vnn6y9/+YsqKip02WWXKT09Xa+99ppuuOEGrV69Wk8++WSvdV577bWaNm2azjjjDI0aNUrNzc1asWKFvvnNb2rLli26++67+63lq1/9qt555x3NmzdPX/nKV1RYWPix9T/22GO69tprlZGRoYsvvliFhYVatWqV7r33Xr3wwgt68803FQwGFQwGdfvtt2vdunX605/+pAsuuCA5mczRTirz6quvSpI+/elPD/g9LS0tmj17tgKBgC666CI5nU4VFRXp9ttv13PPPaf33ntP3/3udxUMBiUp+fVAl112mf72t79p3rx5ysrK0ooVK3TfffepoaFBixYtOqp9AgBYzAQAYIisXbvW9Hg85ujRo8158+aZksyFCxeapmmat99+uynJvP766814PJ58TzweN7/1rW+Zksznnnuu1/qqqqr6bCMSiZhnnXWWmZaWZu7Zs6fXsjlz5piSzOOPP95sbGwccN07d+40PR6PmZmZaW7atKnXsmuvvdaUZF5zzTW9Xl+0aJEpyVy0aNGAt7Njxw5TkpmdnW3efvvtyX833nij+alPfcp0uVzmFVdcYcZisV7v2/+9e+2113q9LsmUZH7zm9/s8x7TNM3LL7/clGTu2LGj33r2f79OPPFEs7m5Ofl6KBQyy8vLTafTadbW1g54/wAAqYchowCAIfOpT31Kd999t/bu3asXX3xR5513nq699loZhqGHHnpIxcXF+vnPfy6Xy5V8j8vl0v333y+Hw5E8k7hfeXl5n214PB5dd911isfjWrlyZb913H333Ud0zd2SJUsUjUZ1/fXXa8qUKb2W3XPPPcrMzNSTTz6pSCQy4HUeTnt7u+68887kvwcffFDr1q3TySefrK9//etKSxv4AB+Px6P//u//PqL3HOzee+9Vbm5u8nlGRobmz58vwzC0Zs2aT7xeAID1GDIKABhSP/jBD/Tzn/9cdXV1+tnPfiZJ2rp1q1paWjRp0iT99Kc/7fd9Pp9PmzZt6vXarl27dO+992rlypXatWuXuru7ey3fu3dvv+s65ZRTjqjmd999V5J01lln9VmWk5OjmTNn6o033tDmzZs1Y8aMI1p3f8aPH9/rVhDt7e1au3atbrrpJn3xi1/Uo48+qm9/+9sDWldpaemAhsQeTn9DVMeOHStJam1tPap1AwCsRSAEAAwpp9OZnGXU5/NJ2ndbBUnatm2b7rzzzkO+NxQKJR9XV1frlFNOUWtrq04//XSdc845ys7Olsvl0s6dO/Wb3/zmkGfsiouLj6jm/ZPGjBo1qt/l+19va2s7ovUOVHZ2ts4880z9/ve/16RJk/SjH/1I3/zmN5Pfv8M50n3tT3/XFe4/45hIJI56/QAA6xAIAQCWy87OliRdeOGF+uMf/zig9zzwwANqbm7WokWL+swS+vTTTydn0OyPw+H4RPXV1dVp2rRpfZbX1tb2anesTJw4Ubm5uWppadHWrVsHdDbySPcVAGAvXEMIALDclClTFAwG9dZbbykWiw3oPVVVVZL2zRh6sNdff31Q65s5c6Yk9bmtg7TvrOC6deuUnp6u4447blC3e7B4PK7Ozk5J6vc2HEdq/7WanOUDAPsiEAIALJeWlqYbbrhBtbW1uvHGG/tcCyjtOwu3cePG5PP998s7OKT95S9/0a9//etBrW/BggVyu9166KGHkkF0v9tuu00dHR1asGBBcijssfKrX/1KsVhMeXl5mj59+lGvLy8vT9K+azEBAPbEkFEAQEq47bbb9N577+nRRx/VCy+8oLPOOkujR49WQ0ODtm3bpjfffFP33HOPpk6dKkn6zne+o0WLFuniiy/W1772NZWUlKiyslIvvfSSLrnkEj3zzDODVltpaal+8Ytf6LrrrtOJJ56oSy65RAUFBXr99df1z3/+U1OmTNG99947aNtra2vTHXfckXze0dGhd999V6+//rqcTqcWLlwot9t91NuZO3eufvazn+maa67RV7/6VWVmZioYDOr6668/6nUDAIYHAiEAICW43W4999xzWrJkiRYvXqzly5crFAqpoKBAEyZM0N1336358+cn259wwgl67bXX9OMf/1h//vOfFY/HNWPGDP3xj39UMBgc1EAo7QugEydO1H//93/rD3/4g8LhsMaOHaubb75Zt9xyS78Tr3xS+287sZ/b7VZRUZEuvfRSff/739fJJ588KNv5whe+oPvvv19PPPGEfvGLXygajWr8+PEEQgCwEYdpmqbVRQAAAAAAhh7X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vLxciURCzz//vF555RW1tLRo1KhRuuKKKzRjxoxkDX/84x+1fPlydXd367Of/azi8bhcLtfQfROBEeqWW27R+PHj1d7ern/961/y+/268sorNW7cOD388MPatWuXxowZo+9973saM2aM/v73v+sPf/iD6urq5HQ6ddxxx+nqq69WcXGxpEP3AV/+8pd11VVX6c0339SOHTt0ww03KBaLacmSJVq0aJEk0RdgyHGGELZTU1OjxYsX69Zbb9Uzzzyjxx9/XJ///OcP2X7VqlW644479OSTTyo/P1+PPPJIctkTTzyh3bt368EHH9Sjjz6qDz74QG1tbYdc1/vvv6/7779f3/zmN/XUU0/plltu0bJly7Rq1apB3EMA/XnggQcUiUT0+OOP64EHHtAbb7zRb7vRo0drypQpevXVV5OvNTc3a82aNTr77LMlSYsWLdK//vUv3XXXXfrf//1fzZo1Sz/5yU/U1NSUfE9ra6t27Nihhx56SP/7v/+rSCSiH//4x0pLS9Mvf/lLPf300/r3f/93ZWZmSpKeeeYZrVq1SrfccouWLl2qSy65RD/96U9VW1srSXr99df1u9/9TjfffLOefPJJTZo0SW+99dax+nYBtrNq1Sp98Ytf1NNPP60LL7ww+bv7gx/8QEuWLFF+fr6eeOIJSZLP59ONN96oJUuW6JFHHpFpmrr//vt7re/gPmC/l156Sddff72effZZzZo1q08d9AUYagRC2I7Tue/HfteuXQqHw/L5fJo+ffoh23/9619Xbm6uPB6P5s6dq23btkna9wne66+/rm984xvKy8uT1+vVVVddpcPdyeX555/XueeeqxkzZsjpdGr8+PE699xzB3UiGwB9NTc3a926dbryyiuVmZmpzMxM/Z//838O2f6cc87RypUrZRiGpH2f9peXl2vChAkyDEOvvPKK5s+fr5KSErndbl144YUqKirq8+HONddcI5/PJ6/XqzVr1qizs1Pf+c53lJWVJafTqXHjxiXPQj7//PO6/PLLNWbMGDmdTn3mM5/RlClTksH11Vdf1ec//3kdd9xxSktL07nnnqvS0tJj8v0C7Ogzn/mMpk+fLqfTqblz5yoSiWjOnDkqKiqS2+3WnDlztHXrVknSSSedpAkTJsjlcikrK0uXXXaZtmzZonA43GudB/YB+11wwQUaN26cHA5Hr9f3oy/AUGPIKGynuLhYP/jBD/Tiiy9q4cKFGjVqlC644ALNmTOn3/a5ubnJx+np6YpGo0okEuro6FA8Hu81pMzv9x/2prM1NTVat26dXnrppeRrhmEoPz9/EPYMwKHsP3NXVFSUfO3Axwc79dRT9cQTT2jdunWaOXOmXn31VV100UWSpI6ODkWjUY0aNarXe0aNGqXGxsbk82Aw2OuPvfr6ehUWFsrtdvfZXmtrq8LhsO69997kh1bSvuuL9m+nubm5z9mEw+0DgCNz8P/3B7/m9XrV3d0tSaqsrNRvf/tb7d69Wz09Pck27e3t8vv9kvr2Afsd7veWvgBWIBDClmbPnq3Zs2crkUjon//8p372s59p4sSJR7SOrKwspaWlqaGhodc1hV1dXYd8T05Ojs444wxdeumlR1U/gCOz/0OXhoYGjR8/Pvn4ULxer8444wy9/PLLcrlcamtr0xlnnCFp3+++x+NRbW1tcl2SVFdXp0mTJiWfOxyOXussLCxUQ0ODYrFYn1AYCATk8Xh02223HXLEQl5eXp+aD+x/AAyNWCymu+++W1//+td1yy23yO/3a/v27fre977Xa5TQwX3Ax70u0RfAGgwZhe3s2bNHa9asUXd3t1wuV/KTvAM/iRsIl8ulOXPm6Le//a1aWloUiUS0aNGiw3b0X/rSl7R8+XK99957SiQSSiQS+uCDD1RZWXlU+wTg8PLy8jRjxgwtXrxYoVBIoVBITz755GHfc8455+jtt9/WH//4R5166qm9+orPf/7zWrp0qerq6hSLxfSnP/1JtbW1hxxpIEknn3yyMjIy9Oijj6qjo0OmaWrXrl1qaGiQ2+3Wueeeq8WLF2v37t0yTVORSESVlZXau3evJOmss87Sq6++qs2bNyuRSOjll1/Wjh07Bu+bBGBA4vG4IpGIAoGA/H6/mpub9dRTTw3KuukLYAXOEMJ24vG4nn32We3atUumaaqgoEA33XRTn+FfA3HNNdfoscce0/XXXy+Px6OLLrpIgUCg3yFh0r4zk263W0899ZT27NkjSSopKUkORQNw7Hz/+9/XwoULdfXVVysQCGjBggV6++23D9m+vLxc48aN09q1a3Xvvff2WnbllVdq6dKluvXWWxUOhzVu3DjdddddKigoOOT6vF6v7rnnHi1evFg33HCDenp6krOMFhYW6sorr9Sf//xn3XvvvWpqapLb7VZ5ebm+9a1vSdp3r7Lm5mbdd999yZkFZ8+ePTjfHAAD5vP5dMMNN+jpp5/Wr3/9axUXF+uCCy7QmjVrBmX99AUYag7zcDNgADgioVBI8+fP17333qspU6ZYXQ4AAABwWAwZBY5CY2OjKisrk5PMPPLIIyopKel1HREAAACQqhgyChyFWCymxx57TA0NDXK5XJo8ebJuvfVWbg4LAACAYYEhowAAAABgUwwZBQAAAACbIhACAAAAgE0RCAEAAADApgiEAAAAAGBTBEIAAAAAsCkCIQAAAADYFIEQAAAAAGyKQAgAAAAANvX/A57Yb5Xq00ToAAAAAElFTkSuQmCC", "text/plain": [ "" ] }, "execution_count": 114, "metadata": { "image/png": { "width": 450, "height": 200 } }, "output_type": "execute_result" } ], "execution_count": 114 }, { "cell_type": "markdown", "source": [ "# Matplotlib\n", "I think very powerful, but I do not really like the commands.\n", "Try out yourself to add the color and the points." ], "metadata": { "collapsed": false }, "id": "925bde288ad2c72f" }, { "cell_type": "code", "source": [ "fig, ax = plt.subplots(figsize=(3, 3))\n", "\n", "ax.boxplot(data_toy_plot[\"year_birth\"],\n", " widths=0.8,\n", " medianprops=dict(color=\"black\")\n", " )\n", "\n", "ax.set_title('Year of Birth')\n", "ax.xaxis.set_major_locator(plt.NullLocator()) # Hide x-axis major ticks\n", "\n", "fig" ], "metadata": { "collapsed": false, "ExecuteTime": { "end_time": "2026-04-09T13:16:05.701483Z", "start_time": "2026-04-09T13:16:05.598888Z" } }, "id": "516851dda7bdaaee", "outputs": [ { "data": { "text/plain": [ "
" ], "image/png": "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" }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "execution_count": 5 }, { "metadata": {}, "cell_type": "markdown", "source": "", "id": "12c8d0dbd4706162" }, { "metadata": { "ExecuteTime": { "end_time": "2026-04-09T13:16:05.978245Z", "start_time": "2026-04-09T13:16:05.703362Z" } }, "cell_type": "code", "source": [ "data_toy_temp = data_toy_plot \\\n", " .groupby(\"marital_status\", observed = True)[\"year_birth\"] \\\n", " .apply(list)\n", "\n", "fig, ax = plt.subplots(figsize=(9, 3))\n", "\n", "ax.boxplot(data_toy_temp.values,\n", " widths=0.8,\n", " medianprops=dict(color=\"black\")\n", " )\n", "\n", "ax.set_title('Year of Birth')\n", "ax.set_xticklabels(data_toy_temp.index)\n", "\n", "del data_toy_temp\n", "\n", "fig" ], "id": "bd08788dae4bb26f", "outputs": [ { "data": { "text/plain": [ "
" ], "image/png": "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M8+oXr16slgsio2NdZ40+1ueenWa0NBQ+fj4aMeOHddsW9ptuNrVha70PAFAZUXQBwAPFhQUJOnSj0n99sj3lXz++efq3Lmzy9xzSTp37pxuvPHGUtcQGBiobdu26fz58y5Huw8fPuxcX9bsdrtyc3PLvF8AqEqYow8AHuymm25Sp06d9I9//EOnTp26bP1v57FbrdbLjkhv3LjROYe/tLp37y673a4VK1a4LF+6dKmqVaum7t27X1f/v5ecnKzc3Nzr+u2A2rVr69y5c2VYFQBUPhzRBwAPN336dD388MPq06eP/vKXvygoKEhZWVlKTU3VyZMn9emnn0qS7rjjDr311luaMmWKIiMjtX//fn322WfObwVK66677lLnzp312muv6eeff1ZISIi+/fZbffnllxo+fPhll64siZycHH3yySeSLh3FP3LkiD788EPVrFlTjz/+eKn7bdOmjbZt26YlS5bo5ptvVqNGjdS2bdtS9wcAlRFBHwA8XPPmzbV69Wq9+eabSkpK0pkzZ+Tr66vWrVu7XDJz9OjR+vXXX/XZZ59pw4YNat26tRYuXKi5c+de1+NbLBa9/fbbeuONN7RhwwatWbNGgYGBmjhxokaMGHFdfZ88eVITJ06UJFWrVk316tVTx44d9eSTT6pVq1al7nfy5Ml6+eWXNW/ePF28eFH9+vUj6AOocqoZnHkEAAAAmA5z9AEAAAATIugDAAAAJkTQBwAAAEyIoA8AAACYEEEfAAAAMCGCPgAAAGBCpr2OvsPhUGFhoSwWi6pVq+bucgAAAIAyYRiGHA6HvLy8ZLFc/bi9aYN+YWGh0tLS3F0GAAAAUC7CwsJUvXr1q643bdAv+nQTFhYmq9Xq5mpwvex2u9LS0tifgIdijAKei/FpPkX79I+O5ksmDvpF03WsVisvahNhfwKejTEKeC7Gp/lca3o6J+MCAAAAJlSioL9w4UINGDBAkZGRioqK0tixY3X48GGXNnl5eZoxY4Y6d+6syMhIPfXUU8rKynKu37dvn5577jn16NFD4eHhuvfee/Xee+9d9ljbt29Xv379FBoaql69emnNmjWl3EQAAACg6ilR0P/uu+80ZMgQffTRR1qyZIkKCws1cuRI5ebmOtvExsbq3//+t+bNm6f3339fp06d0pNPPulcn56eLl9fX73yyitav369Ro8erVdffVXL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" }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "execution_count": 6 }, { "metadata": {}, "cell_type": "markdown", "source": [ "# Seaborn\n", "I think Seaborn is nicer to use as matplotlib (uses matplotlib in background)." ], "id": "5e5feb96bad08e88" }, { "metadata": { "ExecuteTime": { "end_time": "2026-04-09T13:16:06.333376Z", "start_time": "2026-04-09T13:16:05.981046Z" } }, "cell_type": "code", "source": [ "fig, ax = plt.subplots(figsize=(3, 3))\n", "\n", "sns.boxplot(\n", " data=data_toy_plot,\n", " y=\"year_birth\",\n", " ax=ax,\n", " width=0.8,\n", " orient=\"v\",\n", " medianprops=dict(color=\"black\"),\n", " boxprops=dict(facecolor=to_rgba(\"gray\", 0.3), edgecolor=\"black\"),\n", " capprops=dict(color=\"black\"),\n", " whiskerprops=dict(color=\"black\")\n", ")\n", "\n", "sns.swarmplot(\n", " data=data_toy_plot,\n", " y=\"year_birth\",\n", " ax=ax,\n", " color=\"black\",\n", " alpha=0.5\n", ")\n", "\n", "ax.set_title(\"Year of Birth\")\n", "ax.set_ylabel(\"\")\n", "\n", "fig" ], "id": "77f41da5864f51c8", "outputs": [ { "data": { "text/plain": [ "
" ], "image/png": "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" }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "execution_count": 7 }, { "metadata": { "ExecuteTime": { "end_time": "2026-04-09T13:16:06.775518Z", "start_time": "2026-04-09T13:16:06.335578Z" } }, "cell_type": "code", "source": [ "fig, ax = plt.subplots(figsize=(9, 3))\n", "\n", "sns.boxplot(\n", " data=data_toy_plot,\n", " x=\"marital_status\",\n", " y=\"year_birth\",\n", " hue=\"marital_status\",\n", " ax=ax,\n", " width=0.8,\n", " palette={\n", " \"single\": \"darkgreen\",\n", " \"divorced\": \"darkred\",\n", " \"married\": \"darkblue\"\n", " },\n", " boxprops=dict(edgecolor=\"black\", linewidth=1),\n", " medianprops=dict(color=\"black\", linewidth=1),\n", " whiskerprops=dict(color=\"black\", linewidth=1),\n", " capprops=dict(color=\"black\", linewidth=1)\n", ")\n", "\n", "alpha_palette = {\n", " \"single\": to_rgba(\"darkgreen\", 0.3),\n", " \"divorced\": to_rgba(\"darkred\", 0.3),\n", " \"married\": to_rgba(\"darkblue\", 0.3)\n", "}\n", "\n", "for patch, cat in zip(ax.patches, [\"single\", \"divorced\", \"married\"]):\n", " patch.set_facecolor(alpha_palette[cat])\n", "\n", "sns.swarmplot(\n", " data=data_toy_plot,\n", " x=\"marital_status\",\n", " y=\"year_birth\",\n", " ax=ax,\n", " hue=\"marital_status\",\n", " palette={\n", " \"single\": \"darkgreen\",\n", " \"divorced\": \"darkred\",\n", " \"married\": \"darkblue\"\n", " },\n", " alpha=0.5\n", ")\n", "\n", "ax.set_title(\"Year of Birth\")\n", "#ax.set_xlabel(\"\")\n", "ax.set_ylabel(\"\")\n", "\n", "fig" ], "id": "1d1e70515dabbaa4", "outputs": [ { "data": { "text/plain": [ "
" ], "image/png": "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cOrUKcf65wCzZs3imWeeoW3btnh4eODl5cWbb75J3bp1gcvz/AMCApwL9fCgatWqTv0UxZ49e679wERERKRUnDlzBi8vL2bNes7VpZicJ9DxKtsusHr1thtZTIXk5eXFmTNnSEhIcFkNpRr0rVYrs2fP5sUXX6RNmzZYLBZiYmK49dZbne6c+MYbb5Cens6CBQuoVq0aa9asYfjw4SxatIjw8PDSLInIyEgsFkup9ikiIiIl9/PPP5OamurqMkrk+PHjZGRkuLqMIvnuOxvnzhX81qRZM0/Cw58s5Bllk5+fHyEhIa4uo9gCAwOpU6fOdenbbrcXaTC71NcnjIiI4PPPPycjI4Pc3FwCAgLo3bs3ERERACQlJfHRRx+xYsUKGv1v+bXGjRvzww8/sGjRIiZOnEhgYCBnz5516jcvL48LFy4QFBRUrHosFouCvoiISBlSr1496tUrnyuotW7d2tUlFNlf/5rJhx/+xKVLeY622rX9eOihZnh6KhtVBNdtIXI/Pz/g8gW6e/fu5emnnwbg0qVLwOW5+79lsVgco/7R0dGkp6ezd+9exweELVu2kJ+fT1RU+blJkoiIiIirBAf7MmxYS3btSiE9PZvatf1o3DgAi6XYa7FIOVXsoH/x4kWSkpIcj48dO8a+ffuoWrUqwcHBrFq1ioCAAIKDg/nll1+YMmUKnTt3JjY2Frg8j79u3bq89NJLjB49Gn9/f9asWcP333/P3LlzAWjQoAEdOnTgX//6FxMmTCA3N5dJkyZx9913U1NLuImIiIgUiY+PlZiYYFeXIS7iZhiFXY99dVu3buWhhx4q0N6zZ0+mTZvGwoULmTdvHmlpaQQFBdGjRw+GDBmCp+f/3aDh6NGjzJw5kx07dmCz2ahTpw6PPvoo//jHPxz7XLlh1rfffuu4YdbYsWOLfMMsu91OQkICLVq00NQdERERETGNoubcYgf98kJBX0RERETMqKg5V5O0RERERERMSEFfRERERMSEFPRFRERERExIQV9ERERExIQU9EVERERETEhBX0RERETEhBT0RURERERMSEFfRERERMSEFPRFRERERExIQV9ERERExIQU9EVERERETEhBX0RERETEhBT0RURERERMSEFfRERERMSEFPRFRERERExIQV9ERERExIQU9EVERERETEhBX0RERETEhBT0RURERERMSEFfRERERMSEFPRFRERERExIQV9ERERExIQU9EVERERETEhBX0RERETEhBT0RURERERMSEFfRERERMSEFPRFRERERExIQV9ERERExIQU9EVERERETEhBX0RERETEhBT0RURERERMSEFfRERERMSEFPRFRERERExIQV9ERERExIQU9EVERERETEhBX0RERETEhBT0RURERERMqNhBf/v27TzxxBPExsYSHh7OmjVrnLanpqYyZswYYmNjad68OQMHDuTo0aMF+vnxxx956KGHaNGiBS1btqRv375kZWU5tp8/f56RI0fSsmVLWrVqxQsvvMDFixeLf4QiIiIiIhVQsYO+zWYjPDyccePGFdhmGAZDhw4lOTmZt99+m7i4OEJCQnjkkUew2WyO/X788UcGDRpEbGwsixcvZsmSJfTt2xd39/8r59lnn+XQoUPMnz+fOXPm8MMPP/DSSy+V8DBFRERERCoWj+I+oWPHjnTs2LHQbUePHiUhIYEVK1bQqFEjAMaPH0/79u2Jj4+nd+/eAEydOpX+/fvz2GOPOZ5bv359x38nJiayYcMGlixZQmRkJABjx47lscceY9SoUdSsWbPI9drt9uIeooiIiIhImVXUfFvsoP9HcnJyAKhUqZKjzd3dHU9PT3bs2EHv3r1JS0tj165ddO/enT59+pCUlET9+vUZPnw4rVq1Ai6P+FepUsUR8gHatWuHu7s7u3fvpkuXLkWuac+ePaV0dCIiIiIi5UepBv369esTHBzMzJkzmThxIt7e3ixYsIBTp06RkpICQHJyMgBvvvkmo0aNokmTJixfvpyHH36YFStWcPPNN5OamkpAQIBzoR4eVK1a1dFPUUVGRmKxWErnAEVEREREXMxutxdpMLtUg77VamX27Nm8+OKLtGnTBovFQkxMDLfeeiuGYQCQn58PwP3330+vXr0AaNq0KZs3b2bp0qWMHDmyNEvCYrEo6IuIiIhIhVOqQR8gIiKCzz//nIyMDHJzcwkICKB3795EREQAEBQUBECDBg2cntegQQNOnDgBQGBgIGfPnnXanpeXx4ULFxzPFxERERGRq7tu6+j7+fkREBDA0aNH2bt3L3/9618BqF27NjVq1ODIkSNO+x89epSQkBAAoqOjSU9PZ+/evY7tW7ZsIT8/n6ioqOtVsoiIiIiIaRR7RP/ixYskJSU5Hh87dox9+/ZRtWpVgoODWbVqFQEBAQQHB/PLL78wZcoUOnfuTGxsLABubm4MHDiQ2bNn07hxY5o0aUJcXByHDx/m3//+N3B5dL9Dhw7861//YsKECeTm5jJp0iTuvvvuYq24IyIiIiJSURU76O/du5eHHnrI8Xjq1KkA9OzZk2nTppGSksK0adNIS0sjKCiIHj16MGTIEKc+Hn74YXJycpg6dSoXLlygcePGvP/++9SpU8exz4wZM5g0aRIDBgzA3d2dO+64g7Fjx5b0OEVEREREKhQ348pVsiZjt9tJSEigRYsWuhhXREREREyjqDn3us3RFxERERER11HQFxERERExIQV9ERERERETUtAXERERETEhBX0RERERERNS0BcRERERMSEFfRERERERE1LQFxERERExIQV9ERERERETUtAXERERETEhBX0RERERERNS0BcRERERMSEFfRERERERE1LQFxERERExIQV9ERERERETUtAXERERETEhBX0RERERERNS0BcRERERMSEFfRERERERE1LQFxERERExIQV9ERERERETUtAXERERETEhBX0RERERERNS0BcRERERMSEFfRERERERE1LQFxERERExIQV9ERERERETUtAXERERETEhBX0RERERERNS0BcRERERMSEFfRERERERE1LQFxERERExIQV9ERERERETUtAXERERETEhBX0RERERERNS0BcRERERMaFiB/3t27fzxBNPEBsbS3h4OGvWrHHanpqaypgxY4iNjaV58+YMHDiQo0ePFtqXYRgMGjSo0H5OnDjBY489RvPmzYmJieGVV14hLy+vuOWKiIiIiFRIxQ76NpuN8PBwxo0bV2CbYRgMHTqU5ORk3n77beLi4ggJCeGRRx7BZrMV2P+DDz7Azc2tQLvdbufxxx8nNzeXTz/9lGnTphEXF8e///3v4pYrIiIiIlIheRT3CR07dqRjx46Fbjt69CgJCQmsWLGCRo0aATB+/Hjat29PfHw8vXv3duy7b98+3n//fZYuXUpsbKxTPxs3buTQoUPMnz+fwMBAmjRpwtNPP82MGTN48skn8fT0LHK9dru9uIcoIiIiIlJmFTXfFjvo/5GcnBwAKlWq5Ghzd3fH09OTHTt2OIL+pUuXGDlyJC+99BJBQUEF+klISCAsLIzAwEBHW2xsLOPHj+fQoUM0bdq0yDXt2bOnpIcjIiIiIlJulWrQr1+/PsHBwcycOZOJEyfi7e3NggULOHXqFCkpKY79pk6dSnR0NJ07dy60n9TUVKeQDzge/7afooiMjMRisRTzSEREREREyia73V6kwexSDfpWq5XZs2fz4osv0qZNGywWCzExMdx6660YhgHAN998w5YtW4iLiyvNl74qi8WioC8iIiIiFU6pBn2AiIgIPv/8czIyMsjNzSUgIIDevXsTEREBwJYtW0hKSqJ169ZOzxs2bBitWrXiww8/JDAwkN27dzttT01NBSh0qo+IiIiIiDgr9aB/hZ+fH3D5At29e/fy9NNPA/DYY485XZQL0L17d55//nluv/12AFq0aMGcOXNIS0ujevXqAGzatAlfX18aNmx4vUoWERERETGNYgf9ixcvkpSU5Hh87Ngx9u3bR9WqVQkODmbVqlUEBAQQHBzML7/8wpQpU+jcubNjZZ2goKBCR+WDg4MJDQ0FLl9427BhQ0aNGsVzzz1HSkoKs2bNom/fvsVacUdEREREpKIqdtDfu3cvDz30kOPx1KlTAejZsyfTpk0jJSWFadOmkZaWRlBQED169GDIkCHFeg2LxcKcOXMYP348999/P97e3vTs2ZOnnnqquOWKiIiIiFRIbsaVq2RNxm63k5CQQIsWLXQxroiIiIiYRlFzbrHvjCsiIiIiImWfgr6IiIiIiAkp6IuIiIiImJCCvoiIiIiICSnoi4iIiIiYkIK+iIiIiIgJKeiLiIiIiJiQgr6IiIiIiAkp6IuIiIiImJCCvoiIiIiICSnoi4iIiIiYkIerCxARERGR68Nut7Nt2zbOnDlDjRo1aNOmDRaLxdVlyQ2ioC8iIiJiQqtWrWLSpMn8+ms6+fmeWCyZ1K0byNixY+nWrZury5MbQEFfRERExGRWrVrF448/Re3af+dvf4uhevVA0tJSSUzcwBNPDGbOnHcU9isABX0RERERE7Hb7UyePJn69f9Gx449cXNzA+Cmm26iVq3eVK6cx8svv8wdd9yhaTwmp4txRURERExk27ZtJCWdpHHjWEfIv8LNzY3o6G4kJyezbds2F1UoN4qCvoiIiIiJnDlzBnAjIKB6odsDA2v+Zj8xMwV9EREREROpUaMG7u55WCyZhW739k537CfmpqAvIiIiYiJt2rShdu3aHDr0Bd7ezpdjhob6sXHjx4SGhtKmTRsXVSg3ii7GFRERETERi8XC2LFjGTx4MJ6e+XTq1JeAgJvIyTlDfPwbfPfdN7zzzju6ELcCUNAXERERMZlu3brxzjvvMHnyZNaufdjRHhoayjvvaGnNikJBX0RERMSEunXrxh133KE741ZgCvoiIiIiJmWxWIiJiXF1GeIiuhhXRERERMSEFPRFRERERExIQV9ERERExIRMO0ffMAwA7Ha7iysRERERESk9V/Ltlbx7NaYN+vn5+QDs2bPHxZWIiIiIiJS+K3n3atyMP/soUE7l5+eTl5eHu7s7bm5uri5HRERERKRUGIZBfn4+Hh4euLtffSa+aYO+iIiIiEhFpotxRURERERMSEFfRERERMSEFPRFRERERExIQV9ERERExIQU9EVERERETEhBX0RERETEhBT0RURERERMSEFfXGbMmDEMGTKkVPs8duwY4eHh7Nu3r1T7FTGL/v378/LLLwPQqVMnFixY4NqCSuh6/P0QqYiWLVtGq1atrrmf8PBw1qxZUwoVSWnycHUBUnG9+OKL6H5tIq6zZMkSvL29XV2GiLjQXXfdRceOHV1dhlwnCvriMn5+fq4uQaRCCwgIuK79G4aB3W7Hw0NvNSKulJOTg6enZ4H23NxcvLy88PLyckFVciNo6o5cd1999RXdu3cnKiqKtm3b8vDDD2Oz2Qp89d6/f38mT57M9OnTadOmDe3bt2f27NlOfSUmJvLAAw8QGRnJXXfdxaZNm/7068IDBw4waNAgoqOjadeuHc899xxnz569bscrUlbYbDZGjRpFdHQ0sbGxvP/++07bfzt1Z+TIkQwfPtxpe25uLm3btmX58uXA5bAwefJkYmJiiIyM5IEHHmD37t2O/bdu3Up4eDjr1q3jnnvuITIykh07dpCfn8+7775Lly5diIiI4LbbbuOdd95xPO/kyZM8/fTTtGrVijZt2jB48GCOHTvm2G6325k6dSqtWrWibdu2TJ8+Xd8Gimn079+fSZMm8fLLL9O6dWvatWvHZ599hs1m4/nnnyc6OpouXbqwbt064PL58MILL9CpUyeioqLo2rUrH3zwgVOfV95f33nnHWJjY7nzzjsdU1tXrlxJv379iIyM5Msvvyx06s6aNWvo2bMnkZGR/PWvf+XNN98kLy/Psf3o0aP07dvX8V78/fffX/8flJSIgr5cV2fOnGHkyJH06tWLlStXsnDh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" }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "execution_count": 8 }, { "metadata": {}, "cell_type": "markdown", "source": [ "# Plotly\n", "I think it is a good alternative for interactive plots." ], "id": "61133e888a7a398a" }, { "metadata": { "ExecuteTime": { "end_time": "2026-04-09T13:16:07.011412Z", "start_time": "2026-04-09T13:16:06.777253Z" } }, "cell_type": "code", "source": [ "fig = px.box(\n", " data_toy_plot,\n", " x=[0]*len(data_toy_plot),\n", " y=\"year_birth\",\n", " points=\"all\"\n", ")\n", "\n", "fig.update_traces(\n", " marker_color=\"black\",\n", " line_color=\"black\",\n", " fillcolor=\"white\",\n", ")\n", "\n", "fig.update_layout(\n", " title=\"Year of Birth\",\n", " yaxis_title=None,\n", " xaxis=dict(\n", " showticklabels=False,\n", " ),\n", " width=400,\n", " height=400\n", ")\n", "\n", "fig" ], "id": "4d5be9716733f4d7", "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "data": [ { "alignmentgroup": "True", "boxpoints": "all", "hovertemplate": "x=%{x}
year_birth=%{y}", "legendgroup": "", "marker": { "color": "black" }, "name": "", "notched": false, "offsetgroup": "", "orientation": "v", "showlegend": false, "x": { "dtype": "i1", "bdata": "AAAAAAAAAAAAAAAAAAAAAAA=" }, "x0": " ", "xaxis": "x", "y": { "dtype": "f8", "bdata": "AAAAAAAYn0AAAAAAAGSfQAAAAAAAVJ9AAAAAAACMn0AAAAAAACieQAAAAAAA8J5AAAAAAAAsn0AAAAAAADyfQAAAAAAAVJ9AAAAAAABEn0AAAAAAAEyfQAAAAAAAPJ9AAAAAAAAAn0AAAAAAAESfQAAAAAAA/J5AAAAAAAD8nkAAAAAAAECfQA==" }, "y0": " ", "yaxis": "y", "type": "box", "line": { "color": "black" }, "fillcolor": "white" } ], "layout": { "template": { "data": { "histogram2dcontour": [ { "type": "histogram2dcontour", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "choropleth": [ { "type": "choropleth", "colorbar": { "outlinewidth": 0, "ticks": "" } } ], "histogram2d": [ { "type": "histogram2d", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "heatmap": [ { "type": "heatmap", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "contourcarpet": [ { "type": "contourcarpet", "colorbar": { "outlinewidth": 0, "ticks": "" } } ], "contour": [ { "type": "contour", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "surface": [ { "type": "surface", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "mesh3d": [ { "type": "mesh3d", "colorbar": { "outlinewidth": 0, "ticks": "" } } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "parcoords": [ { "type": "parcoords", "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scatterpolargl": [ { "type": "scatterpolargl", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "scattergeo": [ { "type": "scattergeo", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scatterpolar": [ { "type": "scatterpolar", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "scattergl": [ { "type": "scattergl", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scatter3d": [ { "type": "scatter3d", "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scattermap": [ { "type": "scattermap", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scattermapbox": [ { "type": "scattermapbox", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scatterternary": [ { "type": "scatterternary", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scattercarpet": [ { "type": "scattercarpet", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "pie": [ { "automargin": true, "type": "pie" } ] }, "layout": { "autotypenumbers": "strict", "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "hovermode": "closest", "hoverlabel": { "align": "left" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "bgcolor": "#E5ECF6", "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "ternary": { "bgcolor": "#E5ECF6", "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "sequential": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "sequentialminus": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ] }, "xaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "automargin": true, "zerolinewidth": 2 }, "yaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "automargin": true, "zerolinewidth": 2 }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white", "gridwidth": 2 }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white", "gridwidth": 2 }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white", "gridwidth": 2 } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "geo": { "bgcolor": "white", "landcolor": "#E5ECF6", "subunitcolor": "white", "showland": true, "showlakes": true, "lakecolor": "white" }, "title": { "x": 0.05 }, "mapbox": { "style": "light" } } }, "xaxis": { "anchor": "y", "domain": [ 0.0, 1.0 ], "title": { "text": "x" }, "showticklabels": false }, "yaxis": { "anchor": "x", "domain": [ 0.0, 1.0 ], "title": {} }, "legend": { "tracegroupgap": 0 }, "margin": { "t": 60 }, "boxmode": "group", "title": { "text": "Year of Birth" }, "width": 400, "height": 400 }, "config": { "plotlyServerURL": "https://plot.ly" } } }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 9 }, { "metadata": { "ExecuteTime": { "end_time": "2026-04-09T13:16:07.075433Z", "start_time": "2026-04-09T13:16:07.016536Z" } }, "cell_type": "code", "source": [ "fig = px.box(\n", " data_toy_plot,\n", " x=\"marital_status\",\n", " y=\"year_birth\",\n", " color=\"marital_status\",\n", " points=\"all\",\n", " color_discrete_map={\n", " \"single\": \"darkgreen\",\n", " \"divorced\": \"darkred\",\n", " \"married\": \"darkblue\"\n", " }\n", ")\n", "\n", "fig.update_layout(\n", " title=\"Year of Birth\",\n", " yaxis_title=None,\n", " width=1200,\n", " height=400,\n", " showlegend=False\n", ")\n", "\n", "fig" ], "id": "4dec8abf0e5f9e6e", "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "data": [ { "alignmentgroup": "True", "boxpoints": "all", "hovertemplate": "marital_status=%{x}
year_birth=%{y}", "legendgroup": "divorced", "marker": { "color": "darkred" }, "name": "divorced", "notched": false, "offsetgroup": "divorced", "orientation": "v", "showlegend": true, "x": [ "divorced", "divorced", "divorced", "divorced", "divorced" ], "x0": " ", "xaxis": "x", "y": { "dtype": "f8", "bdata": "AAAAAAAYn0AAAAAAACyfQAAAAAAATJ9AAAAAAABEn0AAAAAAAPyeQA==" }, "y0": " ", "yaxis": "y", "type": "box" }, { "alignmentgroup": "True", "boxpoints": "all", "hovertemplate": "marital_status=%{x}
year_birth=%{y}", "legendgroup": "single", "marker": { "color": "darkgreen" }, "name": "single", "notched": false, "offsetgroup": "single", "orientation": "v", "showlegend": true, "x": [ "single", "single", "single", "single", "single", "single", "single" ], "x0": " ", "xaxis": "x", "y": { "dtype": "f8", "bdata": "AAAAAABkn0AAAAAAAFSfQAAAAAAAjJ9AAAAAAAA8n0AAAAAAAACfQAAAAAAA/J5AAAAAAABAn0A=" }, "y0": " ", "yaxis": "y", "type": "box" }, { "alignmentgroup": "True", "boxpoints": "all", "hovertemplate": "marital_status=%{x}
year_birth=%{y}", "legendgroup": "married", "marker": { "color": "darkblue" }, "name": "married", "notched": false, "offsetgroup": "married", "orientation": "v", "showlegend": true, "x": [ "married", "married", "married", "married", "married" ], "x0": " ", "xaxis": "x", "y": { "dtype": "f8", "bdata": "AAAAAAAonkAAAAAAAPCeQAAAAAAAPJ9AAAAAAABUn0AAAAAAAESfQA==" }, "y0": " ", "yaxis": "y", "type": "box" } ], "layout": { "template": { "data": { "histogram2dcontour": [ { "type": "histogram2dcontour", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "choropleth": [ { "type": "choropleth", "colorbar": { "outlinewidth": 0, "ticks": "" } } ], "histogram2d": [ { "type": "histogram2d", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "heatmap": [ { "type": "heatmap", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "contourcarpet": [ { "type": "contourcarpet", "colorbar": { "outlinewidth": 0, "ticks": "" } } ], "contour": [ { "type": "contour", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "surface": [ { "type": "surface", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "mesh3d": [ { "type": "mesh3d", "colorbar": { "outlinewidth": 0, "ticks": "" } } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "parcoords": [ { "type": "parcoords", "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scatterpolargl": [ { "type": "scatterpolargl", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "scattergeo": [ { "type": "scattergeo", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scatterpolar": [ { "type": "scatterpolar", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "scattergl": [ { "type": "scattergl", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scatter3d": [ { "type": "scatter3d", "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scattermap": [ { "type": "scattermap", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scattermapbox": [ { "type": "scattermapbox", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scatterternary": [ { "type": "scatterternary", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scattercarpet": [ { "type": "scattercarpet", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "pie": [ { "automargin": true, "type": "pie" } ] }, "layout": { "autotypenumbers": "strict", "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "hovermode": "closest", "hoverlabel": { "align": "left" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "bgcolor": "#E5ECF6", "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "ternary": { "bgcolor": "#E5ECF6", "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "sequential": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "sequentialminus": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ] }, "xaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "automargin": true, "zerolinewidth": 2 }, "yaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "automargin": true, "zerolinewidth": 2 }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white", "gridwidth": 2 }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white", "gridwidth": 2 }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white", "gridwidth": 2 } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "geo": { "bgcolor": "white", "landcolor": "#E5ECF6", "subunitcolor": "white", "showland": true, "showlakes": true, "lakecolor": "white" }, "title": { "x": 0.05 }, "mapbox": { "style": "light" } } }, "xaxis": { "anchor": "y", "domain": [ 0.0, 1.0 ], "title": { "text": "marital_status" }, "categoryorder": "array", "categoryarray": [ "divorced", "single", "married" ] }, "yaxis": { "anchor": "x", "domain": [ 0.0, 1.0 ], "title": {} }, "legend": { "title": { "text": "marital_status" }, "tracegroupgap": 0 }, "margin": { "t": 60 }, "boxmode": "overlay", "title": { "text": "Year of Birth" }, "width": 1200, "height": 400, "showlegend": false }, "config": { "plotlyServerURL": "https://plot.ly" } } }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 10 }, { "metadata": { "ExecuteTime": { "end_time": "2026-04-09T13:16:07.177278Z", "start_time": "2026-04-09T13:16:07.174179Z" } }, "cell_type": "code", "source": "", "id": "8c79c676ad98e459", "outputs": [], "execution_count": 12 } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.6" } }, "nbformat": 4, "nbformat_minor": 5 }