{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Päivitetty 2025-11-28 / Aki Taanila\n" ] } ], "source": [ "from datetime import datetime\n", "print(f'Päivitetty {datetime.now().date()} / Aki Taanila')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 4/7 Usean kaavion yhdistelmä\n", "\n", "### Tuonnit ja alkuvalmistelut" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns\n", "\n", "# Grafiikan tyylimäärittely 'whitegrid' sisältää taustaviivoitukset (grid).\n", "# Muita tyylivaihtoehtoja ovat 'darkgrid', 'dark', 'white' ja 'ticks'.\n", "sns.set_style('whitegrid')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Datan avaaminen" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "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", " \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", " \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", " \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", " \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", " \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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
nrosukupikäperhekoulutuspalveluvpalkkajohtotyötovtyöymppalkkattyötehttyötervlomaosakuntosahieroja
0113811.022.0358733.0333NaNNaNNaNNaN
1212922.010.0296315.0213NaNNaNNaNNaN
2313011.07.0198934.01131.0NaNNaNNaN
3413621.014.0214433.03331.0NaNNaNNaN
4512412.04.0218323.02121.0NaNNaNNaN
...................................................
777812213.00.0159844.0434NaN1.01.0NaN
787913311.02.0163813.02121.0NaNNaNNaN
798012712.07.0261234.03331.0NaN1.0NaN
808113522.016.0280834.0333NaNNaNNaNNaN
818223523.015.0218334.04341.0NaNNaNNaN
\n", "

82 rows × 16 columns

\n", "
" ], "text/plain": [ " nro sukup ikä perhe koulutus palveluv palkka johto työtov työymp \\\n", "0 1 1 38 1 1.0 22.0 3587 3 3.0 3 \n", "1 2 1 29 2 2.0 10.0 2963 1 5.0 2 \n", "2 3 1 30 1 1.0 7.0 1989 3 4.0 1 \n", "3 4 1 36 2 1.0 14.0 2144 3 3.0 3 \n", "4 5 1 24 1 2.0 4.0 2183 2 3.0 2 \n", ".. ... ... ... ... ... ... ... ... ... ... \n", "77 78 1 22 1 3.0 0.0 1598 4 4.0 4 \n", "78 79 1 33 1 1.0 2.0 1638 1 3.0 2 \n", "79 80 1 27 1 2.0 7.0 2612 3 4.0 3 \n", "80 81 1 35 2 2.0 16.0 2808 3 4.0 3 \n", "81 82 2 35 2 3.0 15.0 2183 3 4.0 4 \n", "\n", " palkkat työteht työterv lomaosa kuntosa hieroja \n", "0 3 3 NaN NaN NaN NaN \n", "1 1 3 NaN NaN NaN NaN \n", "2 1 3 1.0 NaN NaN NaN \n", "3 3 3 1.0 NaN NaN NaN \n", "4 1 2 1.0 NaN NaN NaN \n", ".. ... ... ... ... ... ... \n", "77 3 4 NaN 1.0 1.0 NaN \n", "78 1 2 1.0 NaN NaN NaN \n", "79 3 3 1.0 NaN 1.0 NaN \n", "80 3 3 NaN NaN NaN NaN \n", "81 3 4 1.0 NaN NaN NaN \n", "\n", "[82 rows x 16 columns]" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = pd.read_excel('https://taanila.fi/data1.xlsx')\n", "df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### subplots\n", "\n", "Kaavio on **Axes**-luokan olio. Kaavio sijaitsee **Figure**-luokan olion (kuvion) sisällä. Saman kuvion sisälle voit sijoittaa useita kaavioita. Voit ajatella, että **Figure** on kehys, jonka sisällä on yksi tai useampia kaavioita.\n", "\n", "Seuraavassa luodaan **subplots**-funktiolla kuvio, jonka sisällä on neljä kaaviota. **subplots** palauttaa kuvion (**fig**) ja kokoelman kaavioita listana (**axs**). " ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "image/png": "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Z8+eVXV1tUpLS6/bW1JSomAwqN27dysUCmn37t0KBoNauHBh3MIDMB9zA0AsRlg2n5bb0dGhiooKHT58WElJSbrvvvv09NNPy+PxyOfzafXq1SopKZEk1dfX66c//anOnDmjz33uc1qxYoVmzJgxLJ8IAHMxNwBEy3ZRAQAAcAovoQ8AAIxFUQEAAMaiqAAAAGNRVAAAgLESWlTc+I6qdjJv2bJFc+bMkc/n05w5c7R582aH037ETuZ+77//vqZMmaLDhw87lDKSnczBYFAPPvigfD6fZsyYoZqaGofTfsRO5tdee02zZs3S1KlTtWDBAu3du9fhtJE++OAD3XvvvTd9vE25BiVmh1OYHc5gdnwCK4G++c1vWk899ZTV3d1tnTlzxpo3b571q1/96rp9f/vb36y8vDxr37591tWrV61du3ZZkydPtv75z38am3nfvn2W3++3GhoarL6+PuvYsWOW3++36urqjM3cr7u725o/f76VnZ1t/elPf3Iw6X8NNXNLS4s1ZcoUa+vWrVZfX5/117/+1brzzjutPXv2GJt5//791t133221trZalmVZdXV1Vk5OjnX27FmnI1uWZVlHjx61Zs+efdPH26Rr0LKYHaZl7sfsGN7M/6uzI2FF5fTp01Z2dnZE2F27dlkzZ868bu+LL75offvb345Y++53v2v97Gc/G/acg9nJ/Prrr1s1NTURa9/73vesNWvWDHvOwexk7vfMM89YL730UsKGjZ3MFRUV1vLlyyPWTp06Zf3rX/8a9pyD2cn86quvWnfddZfV0tJi9fX1Wfv27bPy8vKsf/zjH05GtizLsrZu3WrNnDnT2rVr100fb1OuQctidjiF2eEMZscnS9iPfj7pHVUHi8c7qsaDncwPP/ywHn/88YHbnZ2dOnLkiCZNmuRYXsleZknavn272tratHjxYidjRrCT+cSJE/r85z+v5cuXq7CwUHPnzlUwGNTYsWONzTxv3jylp6eruLhYd9xxh5YuXap169YpIyPD0cySdM8992jfvn0qLi6+6T5TrkGJ2eEUZod5mf9XZ0fCisonvaPqJ+21+46q8WAn82Dnz5/XY489pkmTJmn+/PnDmvFadjK3trZqw4YNeuGFF+TxeBzLeC07mS9evKhNmzappKRE77zzjioqKvT888+rrq7OsbySvcxXr15VTk6Ofve73+n48eOqqKjQypUrdfLkScfy9hs7duyQ3uHUlGvw47IwO+KP2eEMZscnS1hRcfodVePBTuZ+x48fV2lpqW677Tb94he/iNvbXg/VUDN/+OGHWrZsmZ577jndeuutjma8lp37OSUlRUVFRZo5c6aSk5M1bdo0LVy4UHv27HEsr2Qv85o1a5SVlaXJkycrJSVFDzzwgPLz87Vt2zbH8tplyjUoMTucwuxwBrPjkyWsqLjxHVXtZJak2tpaPfLII/rWt76lF154ISFvPT/UzI2NjTp9+rRWrlwpv98vv98vSXryySe1atUqIzNLH32LtLe3N2ItHA7LcvidIexkbm9vvy5zcnKyRo4c6UjWaJhyDUrMDqcwO5zB7BiCGJ5LE7Ovf/3r1rJly6z//Oc/A890rqqqum5fS0uLlZeXZ+3atWvgWcN5eXnWqVOnjM1cV1dn3XHHHdbBgwcdz3itoWa+ViKfuT/UzH/84x+t3Nxca/v27VZfX58VDAat/Px866233jI284YNG6zCwkLrL3/5ixUOh609e/ZYeXl5VlNTk+OZB7vZ423SNWhZzA6nMDvMyvy/OjsSWlTOnz9vlZWVWXfeead11113WevWrbNCoZBlWZaVn59vvfnmmwN7Dx48aJWUlFj5+fnWvHnzrP379xudef78+VZOTo6Vn58f8esHP/iBsZmvlchhYyfz/v37ra9+9auWz+ezioqKrC1bthid+erVq1ZVVZX15S9/2Zo6dap1//33G/FF6drH29Rr0LKYHaZlvhazY3gy/6/ODt49GQAAGIuX0AcAAMaiqAAAAGNRVAAAgLEoKgAAwFgUFQAAYCyKCgAAMBZFBQAAGIuiAgAAjEVRAQAAxqKoAAAAY1FUAACAsf4fwNTe1OCt9x8AAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, axs = plt.subplots(nrows=2, ncols=2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Seuraavassa lisätään kuvion sisään neljä kaavioita kuten edellä ja määritetään kuvion kooksi **8x5**.\n", "\n", "**wspace** ja **hspace** määrittävät kaavioiden välisen tyhjän tilan (w = weigth eli leveys, h = heigth eli korkeus).\n", "\n", "Kuhunkin kaavioon lisätään sisältöä. **axs[0, 0]** viittaa ensimmäisen rivin ensimmäiseen kaavioon, **axs[0, 1]** viittaa ensimmäisen rivin toiseen kaavioon jne." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "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/fHHH1q2bJmef/559e/f39Znbm5umjt3rrp3737Dff/www/122+/6cMPP9R9990nSXrggQd0+fJlvfXWW3rsscfk5+dn91pHjhzJs/4CUPgRKACgCIqKitLEiRN18uRJVapUSWlpafrmm280ZMgQSVLFihW1aNEiSdKJEyd09OhR/f777/rhhx+UnZ0tSSpXrpxq1qypsWPHauvWrXrwwQfVvHlz22lON+Ll5aX33ntP0pWLi48eParDhw/r22+/lSRb21dPjUlLS9ORI0d05MgRbdu2zW6dv7Nnzx5dvHhRYWFhdqc4XT1F6D//+Y8tUJQtW9bu+otKlSpJuvItem7dc889+vDDD5WTk6Njx47pyJEjOnjwoA4fPuzwxdONGzfW0qVLderUKbVq1UotWrSwCwo3cqv9JUnbt2+XYRg37LM5c+Zo9+7dN7zuZseOHapcubItTFzVoUMHLV++XHv37rUFzqvysr8AFH4ECgAogtq3b6+pU6dq7dq1euqpp/TFF18oJydHHTt2tK2zevVqvf766/rvf/8rPz8/1alTR97e3rblbm5umj9/vubMmaOvv/5aq1atkqenp1q3bq2XXnrpum+lr9qyZYsmT56sw4cPq1SpUgoICFCpUqUk/e/5BomJiRo3bpy2b98uDw8PVa9e3XbKVG6egXD27FlJsn3Tfq3Tp0/b/t/Hx8dumZubmyTZ3Q0pNxYsWKC5c+fqzJkzKleunOrWrSsfH5/rrlX5J2PGjFGlSpW0evVqxcbGSpJCQkI0bty4m17YfKv9Jf2vz252Qf6pU6duOP/cuXMqV67cdfOvzjt//vwNt8ur/gJQ+BEoAKAIuu2229SmTRutWbNGTz31lD799FOFhYXp9ttvlyTt2rVLMTEx6tmzp/7v//7P9q39tGnTtHv3bls7FStW1EsvvaTx48dr//79Wr9+vebNm6cyZcrYPgz/VWJiogYNGqTw8HDNnTvXdmRgyZIl2rJli6QrH+T79+8vT09PLVu2TIGBgfLw8NChQ4e0evXqXO+fJL322mu6++67r1t+ow/At2LNmjWaMmWKhg0bpqioKNvdp5577jklJCTYrWu1Wu2mMzIy7Ka9vLz0zDPP6JlnntGJEyf07bff6q233tKwYcO0bt266147L/pL+l+fvf/++7aA91c3O82sTJkyOnr06HXz//zzT0mSv7//dcsc6S8Aro+7PAFAERUVFaX9+/drx44d2rNnj92zJ/bs2aOcnBxFR0fbwoTVatXWrVslXfkQu2fPHt1///366aef5ObmpnvuuUdDhw5V7dq1dfLkSUmSu7v928jPP/+sS5cuacCAAXanGV0NE4Zh6MyZM/rjjz8UFRWle++9Vx4eV77buvrsjNwcOahfv748PT116tQpBQUF2X48PT01ffp0uztVmXHtfu3evVulS5dW//79bR+OL1y4oN27d9vV6+vra+ubq3744Qfb/2dmZioiIsJ2V6c777xTPXr0UNu2bW3bWSwWu+1z21/Xbnethg0b2tr7a5+dPXtWb7zxhu0IxrX73rBhQyUlJdkFTenKES5PT0/de++9171WbvsLQNHAEQoAKKKaNGmiu+66S2PHjlWlSpXUvHlz27KrHwJffvllde7cWefPn9fixYu1f/9+SVe+VQ8MDJS3t7dGjhypwYMHq1y5ctq6dat+/fVX2y1Kr37r/fXXX+vBBx9U3bp15eHhoVdffVV9+/ZVVlaWVq5caXv4XUZGhqpUqaLKlStryZIlqlSpkm677TZ9//33ev/99yXl7toGf39/PfXUU4qLi1N6eroaN26sU6dOKS4uTm5ubqpTp84t9d1tt92m5ORkfffdd7rnnnt077336qOPPtKUKVPUqlUrnT59Wu+9956Sk5Pt7hTVqlUrzZ07V2+//baCg4O1adMm27UOkuTt7a26detq9uzZ8vT0VEBAgP744w+tWrXKdoF46dKlJUnbtm1TjRo1VL9+/Vz119XtNm3apDJlylzXB7Vr11aHDh00duxYJSUlqV69evrjjz80Y8YM3XXXXbYjPdfue2RkpD788EM9++yzio6OVpUqVfTNN99oxYoVevbZZ23/Bv4qt/0FoIgwAABF1uzZs43atWsbcXFx1y1bvHixER4ebtSrV89o2bKlERMTY3z99ddG7dq1jU2bNhmGYRh//PGH8eyzzxpNmzY16tata7Rt29ZYunSprY309HSjd+/eRt26dY1+/foZhmEY69atM9q2bWsEBQUZzZs3N5599lljx44dRkBAgLF48WLDMAzj119/NXr27GkEBwcbjRo1Mrp3725s3rzZePjhh43o6GjDMAxjxYoVRu3atY1jx44ZhmEYMTExRqtWra7bh0ceecSoW7eucf/99xvDhg0z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btOGDRu0bNkyrV27VuvXr5ckffjhh1qwYIHi4uK0bds2RUZGqk+fPrbQMHr0aB09elQrV67Uhg0b5Ovrq2effVaGYWj+/Pm68847FRsbq3Hjxunw4cPq06ePHnroIW3dulULFizQN998Y6tDkr766is1b95c8fHxmjBhgubNm6cff/yx4DoU+BuOjhPO+nGlWvOr/tzilKdiwMPDQ+3bt9eqVavUvHlzZWZm6ssvv9TatWu1efPmG26zePFiPf7442rYsKEkqVWrVgoLC9PSpUs1duxYlShRQuvWrZOfn58aNmyo7777Tu7u5FOguDtw4IAuXrzo7DJyJTY2VpMnT7ZNV6pUSX369FHPnj3VoEEDzZw5U1WqVJEkDRo0SMuWLdOmTZsUEREhSWrXrp18fHzk4+MjSfL19VW/fv3k5uammjVrqk6dOkpMTJQkLVmyRAMGDFCdOnUkSVFRUVq+fLlWr16tjh076ssvv9S6det0++23S7oSMEJDQ/XLL7+oXr16dnWvWbNGAQEBevLJJyVJ1apV07BhwxQdHa3Ro0dLku6++2516tRJktSiRQuVL19eR44cUXBwcD70JOAYVxonEhISnF3CLSmo+gkUxURkZKS6deum9PR0bdiwQQ0aNFD58uVvun5SUpJ27Nihjz76yDbParWqSZMmkqT3339fs2bNUmxsrP7880898MADeumll1SpUqV83xcAhVdAQECu17VarU59sx4/frzdNRRXpaSkKCMjQ88995zdFyXZ2dlKSkqyTVeoUMFuuzJlysjNzc027enpafuGLykpSVOnTtVrr71mW3758mXVq1fP1mbXrl3t2rNYLDp+/Ph1gSIlJcUWdK666667lJmZqZSUFEm6bnz39PQ0dbE5kB8cGSec5er4FBQUJIvF4uxyHJYX9TsyRhMoiok6deqoevXqWrdundasWWP7ZutmKlWqpE6dOql///62eSdOnJC3t7cuXbqkQ4cO6aWXXpKHh4f++OMPvfjii5o8ebJmzpyZ37sCoBBzxTfea/n7+6tEiRKaP3++3Tf6hw8fVsWKFW3Tfw0P/6RSpUqKjo5W27ZtbfMSExPl5+dn+6Z23bp1dkHg0KFD1wUHSapcubK++uoru3mJiYny8vJSmTJlcl0T4CyuNE5YLBaXqvdaBVU/56gUI5GRkVq4cKH++OMPtWjR4m/X7dq1qxYtWqSffvpJ0pVDZpGRkVq7dq3c3Nz0/PPPa/78+bp8+bLKly8vDw8P+fv7F8RuAEC+cnd3V1RUlKZPn66TJ08qJydHq1atUrt27ewuzHZE165dNWfOHP3++++SpC1btqht27bauXOnKlasqJYtW2rSpEk6c+aMsrOzNWfOHEVFRen8+fOSJC8vL6WlpUmS2rZtq99//13vv/++srKylJiYqNdff13t27eXl5dX3nQCADiAIxTFSLt27TR16lQ9+eST8vD4+1/9ww8/rIyMDI0ePVonTpyQn5+fevfurV69esnNzU1z5szR1KlTNXfuXFksFj344IMaPnx4Ae0JAOSvmJgYzZo1S927d9fZs2dVpUoVzZw50+7OeI7o3bu3DMPQwIEDdfr0aVWsWFHjxo1TeHi4JGnatGmaPn26OnXqpPT0dNWqVUvvvvuu7YhFVFSUZsyYoYSEBL322mt699139frrr2vWrFny9vZWu3btNGTIkLzafQBwiJthGIazi0DxYrVa9eOPP2r21pP6KTHF2eUAyAN1KpfVkiHtHNrm6lgQHBzs0qcUFEWM08gPZsYJZ3H18Skv6nekDU55AgAAAGAagQIAAACAaQQKAAAAAKYRKAAAAACYRqAAAAAAYBqBAgAAAIBpBAoAAAAAphEoAAAAAJhGoAAAAABgGoECAAAAgGkECgAAAACmESgAAAAAmEagAAAAAGAagQIAAACAaQQKAAAAAKYRKAAAAACYRqAAAAAAYBqBAgAAAIBpBAoAAAAAphEoAAAAAJhGoAAAAABgGoECAAAAgGkECgAAAACmESgAAAAAmEagAAAAAGAagQIAAACAaQQKAAAAAKYRKAAAAACY5uHsAlB8VSt/m7KshrPLAJAH/lWhjLNLQD5gnEZeYpwouggUcJqxXe6XxWJxdhkA8og1J0cWdw58FyWM08hrjBNFE79ROI3VanV2CS7HarVq37599J2D6DdzHO03PiQUPa76N1MU/uZdfR9uVj/jRNHEbxVwMRcvXnR2CS6JfjOHfoOrKgr/dl19H1y9fuQegQIAAACAaQQKAAAAAKYRKAAAAACYRqAAAAAAYBqBAgAAAIBpBAoAAAAAphEoAAAAAJhGoAAAAABgGoECAAAAgGkECgAAAACmESgAAAAAmEagAAAAAGAagQIAAACAaQQKAAAAAKYRKAAAQJHj4+Pj7BJumavvA/U7V0HW71FgrwRcw2KxOLsEl2DNyZHFnewPoOC56jhtsVgUGBjo7DJuiavvA/U7183qz6/PFAQKOM2ET7bq4Mlzzi6jUPtXhTKa2P0BZ5cBoJhinAaKjvz8TEGggNMc/fO89ielOrsMAMBNME4DyA3OowAAAABgGoECAAAAgGkECgAAAACmESgAAAAAmEagAAAAAGAagQIAAACAaQQKAAAAAKYRKAAAAACYRqAAAAAAYBqBAgAAAIBpBAoAAAAAphEoAAAAAJhGoAAAAABgGoECAAAAgGkECgAAAACmESgAAAAAmEagAAAAAGAagQIAAACAaQQKAAAAAKYRKAAAAACYRqAAAAAAYBqBAgAAAIBpBAoAAAAAphEoAAAAAJhGoAAAAABgGoECAAAAgGkECgAAAACmESgAAAAAmEagcBEBAQHq37+/DMOwm79y5UqFhYXlqo3Vq1erbdu2+VEeADhNWFiYgoKCFBISopCQEAUHB6t58+aaOnWqcnJyHG7PkXHVUcePH1dAQICOHz8u6crYHh8fL0lq27atVq9enS+vCwD5ycPZBSD3vvvuO7377rvq16+fqe07dOigDh065HFVAOB8sbGxioyMtE0fOHBAvXv3lo+Pj6Kjo51YWe59/vnnzi4BAEzhCIUL6dWrl+Li4vTDDz/cdJ1vvvlGjz32mJo2bar69eurZ8+eOnLkiCT7b93i4+MVFhamOXPm6IEHHlCjRo00ePBgpaen29r6/PPP1b59e913332KjIzU999/b1fL9OnT1aNHD4WEhOjf//63vvjii/zZcQBwUEBAgBo2bKh9+/YpKytLcXFxCg8PV6NGjdSvXz8dPXrUbt2JEyeqcePGevrppyVJly9f1muvvaaWLVuqQYMGevHFF3X58mVJkmEYWrRokSIiIhQaGqru3bvr559/trWXnp6ul19+WS1atFDTpk01dOhQJScn/2PNYWFhWrlypaR/HmOTk5M1fPhwNWvWTM2bN9e4ceNs43duxncAyEsEChfSpk0bdevWTc8//7zOnj173fKTJ0/queeeU//+/bVt2zZt2rRJhmHozTffvGF7SUlJOnXqlL7++mt98skn2rNnjz788ENJV46GjB8/XuPGjdOOHTs0ePBgDR48WAcPHrRtv2zZMo0ZM0bx8fF66KGHNG7cOF26dClf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VbduXZ0+fVqGYWjRokWKiIhQaGiounfvrp9//vmG9Vx71ONqfcePH1dcXJwee+wxu/VfffVV9e/fPw97BM5CoAAAAHBhX331ldasWaP169fr6NGjio2N1fvvv68tW7bo/fff1549e/TWW29p6dKl2r59u922VatWVePGjfXZZ5/Z5q1cuVIPPPCAKlSooA8//FALFixQXFyctm3bpsjISPXp00fJyckO1RgVFaW9e/fqyJEjkiSr1arVq1crKirqlvcfzkegAAAAcGEvvPCCypYtq/Llyys6Olrr16/Xo48+qoULF6p8+fI6ffq0MjMzVapUKZ06deq67bt06aLVq1fLMIzrPugvWbJEAwYMUJ06deTp6amoqCjVqFFDq1evdqjGypUr6/7779enn34qSfr+++9ltVrVqlWrW95/OB+BAgAAwIVVq1bN9v933HGHsrKylJ2drXHjxqlRo0b6v//7P3366acyDEM5OTnXbf/QQw8pIyND8fHx+v7772UYhlq2bClJSkpK0tSpUxUaGmr72b9/v06cOOFwnX8NLqtWrVLHjh3l6elper9ReHg4uwAAAACYd+rUKVWvXl3SlesWfHx8NHbsWJUpU0bff/+9SpQooZycHDVs2PCG23t5ealDhw5au3atLl68qE6dOsnD48pHxEqVKik6Olpt27a1rZ+YmCg/P7/r2nF3d1d2drZt+syZM3bLw8PDFRsbq82bN+ubb77RqlWrbnXXUUhwhAIAAMCFTZ8+Xenp6Tp16pRmzpypjh07Kj09XSVKlJC7u7vS09M1bdo0paen233g/6uuXbtqw4YN+uabb+yua+jatavmzJmj33//XZK0ZcsWtW3bVjt37ryujRo1amjLli06f/680tLSNG/ePLvlnp6e6tSpk2JjY1W3bl3VqFEjD3sBzsQRCgAAABdWtWpVtWvXThcvXlT79u01YsQIHTx40HbKU6lSpdSyZUs98MAD+u23327YRq1atXT33XfLw8NDd999t21+7969ZRiGBg4cqNOnT6tixYoaN26cwsPDr2tjwIABGjNmjMLDw1W6dGlFR0fryy+/tFunS5cumj9/vgYNGpSnfQDncjOuvX8YAAAACr3jx48rPDxcGzdu1F133eXsclCMccoTAAAAANMIFAAAAABM45QnAAAAAKZxhAIAAACAaQQKAAAAAKYRKAAAAACYRqAAAAAAYBqBAgAAAIBpBAoAAAAAphEoAAAAAJhGoAAAAABgGoECAAAAgGn/D0gDeOdm5/cZAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, axs = plt.subplots(nrows=2, ncols=2, figsize=(8, 5))\n", "fig.subplots_adjust(wspace=0.4, hspace=0.2)\n", "\n", "# Kuvion otsikko.\n", "fig.suptitle('Vastaajien taustatietoja')\n", "\n", "# Ensimmäinen kaavio axs[0, 0].\n", "sns.countplot(data=df, y='sukup', ax=axs[0, 0])\n", "axs[0, 0].set_ylabel('')\n", "axs[0, 0].set_yticks([0, 1], ['Mies', 'Nainen'])\n", "axs[0, 0].set_xlabel('')\n", "axs[0, 0].grid(axis='y')\n", "\n", "# Toinen kaavio axs[0, 1].\n", "sns.countplot(data=df, y='perhe', ax=axs[0, 1])\n", "axs[0, 1].set_ylabel('')\n", "axs[0, 1].set_yticks([0, 1], ['Perheetön', 'Perheellinen'])\n", "axs[0, 1].set_xlabel('')\n", "axs[0, 1].grid(axis='y')\n", "\n", "# Kolmas kaavio axs[1, 0].\n", "sns.countplot(data=df, y='koulutus', ax=axs[1, 0])\n", "axs[1, 0].set_yticks([0, 1, 2, 3], ['Peruskoulu', '2. aste', 'Korkeakoulu', 'Ylempi korkeakoulu'])\n", "axs[1, 0].set_xlabel('')\n", "axs[1, 0].grid(axis='y')\n", "\n", "# Neljäs kaavio axs[1, 1].\n", "sns.histplot(data=df, x='palveluv', bins=6, ax=axs[1, 1])\n", "axs[1, 1].set_ylabel('')\n", "axs[1, 1].grid(axis='x')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Jos teet kaavion suoraan dataframesta, niin **subplots**-lisäparametrilla kustakin dataframen sarakkeesta tehdään oma kaavio.\n", "\n", "**sharex** ja **sharey** -lisäparametreilla voit pakottaa kaavioille yhteisen x-akselin ja y-akselin." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
 johtoontyötovereihintyöympäristöönpalkkaantyötehtäviin
Erittäin tyytymätön8.5 %nan %11.0 %40.2 %6.1 %
Jokseenkin tyytymätön19.5 %3.7 %11.0 %23.2 %18.3 %
Ei tyytymätön eikä tyytyväinen36.6 %19.8 %36.6 %23.2 %35.4 %
Jokseenkin tyytyväinen28.0 %43.2 %28.0 %12.2 %30.5 %
Erittäin tyytyväinen7.3 %33.3 %13.4 %1.2 %9.8 %
\n" ], "text/plain": [ "" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Dataframen laskeminen.\n", "df1 = df['johto'].value_counts(normalize=True).sort_index().to_frame('johtoon')\n", "df1['työtovereihin'] = df['työtov'].value_counts(sort=False, normalize=True)\n", "df1['työympäristöön'] = df['työymp'].value_counts(sort=False, normalize=True)\n", "df1['palkkaan'] = df['palkkat'].value_counts(sort=False, normalize=True)\n", "df1['työtehtäviin'] = df['työteht'].value_counts(sort=False, normalize=True)\n", "\n", "df1.index = ['Erittäin tyytymätön', 'Jokseenkin tyytymätön', 'Ei tyytymätön eikä tyytyväinen', \n", " 'Jokseenkin tyytyväinen', 'Erittäin tyytyväinen']\n", "df1 = df1*100\n", "df1.style.format('{:.1f} %')" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0.5, 0, 'Prosenttia')" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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Q9aqub62en8kTl8oswRkxoW78WKZ0msJoOc5KLKUyMzM1HYYlI8ZHWZwH1hGKLOUkBnr37aqFzqLOfj/CaUSRlwXpUox6D3mn47KyhIw1tHvfVorvi0sLPDnn38WuS03KysrPp9ZTXr37q1yA7TCtuU2duxYjB07Vp2h6SSlUqn3O12lUomrV6+W+VN+9bLwhmHkYJZAkW+6SKXDEPJPf/aBZTf2N9H3HCxK/rHwLn36nn9A2d0H6mrhDZTy3c6JqOx5+fKltkMgItIa7gNJm5h/pG3MQfVi8U1ERERERESkYSy+iYiIiIiIiDSMxTcRERERERGRhrH4JiIiIiIiItIwFt9EREREREREGsbim4iIiIiIiEjDWHwTERERERERaRiLbyIiIiIiIiINY/FNREREREREpGEsvomIiIiIiIg0jMU3ERERERERkYax+CYiIiIiIiLSMBbfREREREQ6qHz58toOgYjUiMU3UTHJZDJth6B5RsYwNTXVdhRUgELnYJZSs4GQQdLmPlDJnCbo/+ewTCZD8+bNCzVOoeTfRGnTx/zLyhLaDkHvmWg7AKKyasL2GFx+9K+2w9AYq9oWWNTPDiYm3E3orF2jgYRLb56mphzw/bF04iGDEnwiGNf+uVbq/Tap0gRzOs0p9X5J98RPmYrMa6Wfg7rGrEkT1J//jbbDMDiHfr6MpLgX2g5DbarXrYguQ1poOwy9x2/VRMV0K+FfXIp/ru0wyJAl3gAexmg7CjJQd57fweWky9oOgwxYxp07SIuN1XYYZKCSH73A0/up2g6Dyhiedk6SO3fuqGU5d+/eVctyikpd8RMREREREambwRXfO3bsgEKhUPu0peVNMYWFhSEgIKBYy92wYQOmTZtWktAAAHPnzsWyZctKvJz8vD4+d3d3RERESG35xR8QEICwsDBERUXBzs5OIzEREREREREVBk871yMjRowo9rxJSUlqiSE5OVkty8nP6+OLjIxUacsv/h9//O861+joaI3FRURERERE9DYGd+Q7t6tXr2Lo0KFwcHBAp06dMH36dKSkpOSZLj09HUOHDsWAAQOQmpqKx48fIyAgQJpv9OjRePLkCQBACIF169ahW7dusLe3R//+/XHx4kVpWampqQgJCYGLiwvat2+PcePG4enTpwCABw8ewNraGlu3boVCoUDbtm0xePBgPHr06K0x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SEjAq1evMH/+fCiVSri6uharfyIiIiIiopLQ++K7d+/ecHFxgaenJ5ydnWFqaoovv/wSAFCpUiWsWbMG165dg4uLC3r27In69evnOToLZBd3s2fPxtatW3H06FGEhIQgKysLbm5uaNeuHWJiYqT5/P394eXlhZEjR8LOzg6hoaEICgqCm5sbAGDevHmoXLkyvLy84OTkhCNHjuDHH38s8lHZ3DGVhKurK549e4a2bdtKPwJ4eHjgxo0b6NGjB8qXL68yfUFtPXr0wPnz59G5c2fpPR8fH8TGxqrcaK2opk6diitXrsDBwQHdu3fHP//8A4VCgWvXruUb/7x589CwYUN4e3vj/fffx9WrV7F27VqV09yJiIiIiIhKi96fdm5qaoqZM2di5syZ+ba/++67WLVqVb5tPj4+KgWjnZ0dYmNjpddLly7Ndz6ZTIaAgAAEBATk216lShWEhITk29agQQNcvXpV5b3AwMBCxdSpU6cCpwOAn3/+Od8+gez18Mcff+SJs1KlSvD19c13DPm1OTk54dSpUyrvWVpawszMDF5eXirv5x5n7vheH3fLli2xY8eOIsU/a9asfKd92zomIiIiIiJSN70vvql4rl+/jn379sHS0lK6QVlh2l6Xnp6Ou3fvYt26dXBxcUGdOnU0HXapalKrItL0+MkWVrXzPr6OdEwNKyAr7c3T1JSXTixkcBpXbox0kV7q/Tap0qTU+yTdZNq4MYzSSz8HdY1ZE/5NaEM1ywoQevQ9sHrdim+fiEqMxTfla/jw4QCA77//vkhtr0tPT0e/fv1Qt25d6Xnd+mSur63e33xCmSWQmZmp7TCoIL2WAIXJwSwlYKzfuUqlb0aHGVrbByqzlJAxpw1evdBZev85XFhCqYQR10WpUgx6T+/yLytLwNi4cDdDpuJh8U35OnToULHaXmdhYSE9p1sfvX6XfL0lsqSb2pHuKXQOskghDdDmPpCFNwH6/zmsVCpx9epVWFtbv3WcLLxLnz7mHwtvzdP7G64REREREZVFOY+oJSL9wOKbiIiIiIiISMNYfBMRERERERFpGItvIiIiIiIiIg1j8U1ERERERESkYSy+iYiIiIiIiDSMxTcRERERERGRhrH4JiIiIiIiItIwFt9EREREREREGsbim4iIiIiIiEjDWHwTERERERERaRiLbyIiIiIiIiINY/FNRERE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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "axs = df1.plot(kind='barh', figsize=(10, 2), legend=False, subplots=True, layout=(1, 5), \n", " sharex=True, sharey=True)\n", "axs[0, 2].set_xlabel('Prosenttia')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Lisätietoa\n", "\n", "Seuraavassa osassa 5/7 opit laatimaan **seaborn**-kaavioita:\n", "\n", "- [Seaborn-kaaviot](https://github.com/taanila/kaaviot/blob/master/seaborn.ipynb)\n", "\n", "Löydät kaikki muistiot osoitteesta https://tilastoapu.wordpress.com/python." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "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.13.9" } }, "nbformat": 4, "nbformat_minor": 4 }