{"cells": [{"cell_type": "markdown", "metadata": {}, "source": ["# plotnine\n", "\n", "[plotnine](http://plotnine.readthedocs.io/en/stable/) is an extension of [ggplot](http://ggplot.yhathq.com/). The language makes it to compose the data with the layout. I replicate the example from the gallery [Two Variable Bar Plot](http://plotnine.readthedocs.io/en/stable/generated/plotnine.geoms.geom_col.html#two-variable-bar-plot)."]}, {"cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": ["%matplotlib inline"]}, {"cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [{"data": {"text/html": ["
run previous cell, wait for 2 seconds
\n", ""], "text/plain": [""]}, "execution_count": 3, "metadata": {}, "output_type": "execute_result"}], "source": ["from jyquickhelper import add_notebook_menu\n", "add_notebook_menu()"]}, {"cell_type": "markdown", "metadata": {}, "source": ["## example"]}, {"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", "
categoryvaluevariable
0Female60gender
1Male40gender
21-2450age
325-5430age
455+20age
5Lo10income
6Lo-Med25income
7Med25income
8High40income
\n", "
"], "text/plain": [" category value variable\n", "0 Female 60 gender\n", "1 Male 40 gender\n", "2 1-24 50 age\n", "3 25-54 30 age\n", "4 55+ 20 age\n", "5 Lo 10 income\n", "6 Lo-Med 25 income\n", "7 Med 25 income\n", "8 High 40 income"]}, "execution_count": 4, "metadata": {}, "output_type": "execute_result"}], "source": ["import pandas as pd\n", "\n", "df = pd.DataFrame({\n", " 'variable': ['gender', 'gender', 'age', 'age', 'age', 'income', 'income', 'income', 'income'],\n", " 'category': ['Female', 'Male', '1-24', '25-54', '55+', 'Lo', 'Lo-Med', 'Med', 'High'],\n", " 'value': [60, 40, 50, 30, 20, 10, 25, 25, 40],\n", "})\n", "df['variable'] = pd.Categorical(df['variable'], categories=['gender', 'age', 'income'])\n", "\n", "df"]}, {"cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [{"name": "stderr", "output_type": "stream", "text": ["c:\\Python364_x64\\lib\\site-packages\\statsmodels\\compat\\pandas.py:56: FutureWarning: The pandas.core.datetools module is deprecated and will be removed in a future version. Please use the pandas.tseries module instead.\n", " from pandas.core import datetools\n"]}, {"data": {"image/png": "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2yoiIkKhoaFq06aNUlNTr/va8+fPV61atRQSEqJmzZrphx9+KJRjvlq+g+r69etVr149JScnKzY2VtnZ2Y51Xl5emjGD+4MBAADcjNzcXLVr105Vq1ZVSkqKvvrqK33wwQd65513HNt88803qlSpkk6ePKmxY8eqT58+mjlzprZt26Yff/xRK1eudEwg5ubmKi4uTsnJyUpNTVVAQICefvrpa772Rx99pFGjRmnx4sVKS0tTz5491bZtW2VlZRXKsf9ZvoPq8OHDFRsbqx07dmjMmDFO6+rVq6c9e/a4rDkAAIDiYPDgwQoJCVFISIiio6O1a9cuHT58WK+88op8fX0VFRWlwYMHa/HixY59ypUrp759+8rDw0OPPvqoTp8+rf79+ys0NFRRUVFq3ry546x3SEiIunTpIn9/fwUFBWnkyJH6/PPPr9nLf/7zHw0bNkx16tSRh4eH+vbtK4vFoh07dhTK7+LP8h1U//vf/+qxxx6TJFksFqd1ISEhstlsrukMAACgmJgyZYrS09OVnp6ulJQUJScn69SpUwoNDXUE2AEDBujEiROOfSIjIx0/+/v7X3PZhQsXJEmXLl1S3759FR0drRIlSui+++7ThQsXdPny5Ty9JCcn67nnnnO8bkhIiI4dO6YjR4646/CvK98fpipZsqSOHj16zXX79+9XmTJlbropAACA4qxChQoqV66ckpOTXVJv8uTJ+vHHH7Vjxw6VKVNG3377rerWreu4hvXq1x46dKji4+Nd8to3I98zqh06dNBLL72kn3/+2bHMYrHo+PHjmjRpkjp37uzSBgEAAIqbe+65R+Hh4Ro7dqwuXryo3NxcHThw4Lqn6//O+fPn5efnp5CQEJ05c0Zjx4697rb9+/fXhAkT9O2338put+vChQv66KOPdP78+YIeToHlO6iOHz9e4eHhqlOnjho0aCBJeuKJJ1S9enUFBwdr9OjRru4RAACgWPHw8NBHH32k/fv367bbblNoaKi6deumY8eOFajeoEGDlJWVpfDwcDVo0ED333//dbdt3769XnrpJcXFxSkkJES33Xab5s+fX9BDuSkW+7XmfP9Gdna2FixYoPXr18tms6lkyZJq2bKlevXqJW9vb3f06VLuvI42IX2I22qj6EkMmVTgfdOHJLiwExR1IZMSC7xvwoZ0F3aCoi6xZYjbaoeFhbmt9tVi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hYaGasiQIS47noIgqAIAAJjMgQMH1KVLF40fP15paWnq3bu3Wrdu7RQor6Vnz55auXKlMjMzderUKW3fvl0dO3Z02mb48OHas2ePdu7cqcOHD8vb21sJCQmSpJ9//llPPPGEZs2apZMnTyokJES7du1y23H+HYIqAACAySxZskQPPPCAHnroIXl6eurJJ59U+fLltWbNmr/cLyIiQo0aNdKqVau0YMECderUSb6+vo71drtdb731ll5//XVFRETIz89PY8eO1bJly3TlyhUtWbJErVu3VsuWLeXl5aXhw4crNDTU3Yd7XXyFKgAAgMkcOXJEFStWdFpWsWJFHTlyRFu2bFHr1q0dyy9cuOC0XXx8vGbNmqXjx4/rP//5j9O6U6dO6eLFi2rUqJHTcqvVqhMnTujo0aOqUKGCY7mHh4fKli3roqPKP2ZUAQAATKZs2bJKSUlxWpacnKyyZcuqWbNmunDhguNxtbZt22r37t3KzMzME0jDwsLk5+envXv3Kj093fHIzMxU2bJlFRUVpdTUVMf2OTk5OnLkiHsO8gYQVAEAAAx25coVZWZmOh7dunXTunXrtG7dOl25ckVz5sxRamqq2rRp87e1vLy89Omnn2rlypV51lmtVvXt21fPPvusjh07Jkk6efKkPvjgA0lS165dtXbtWm3atEnZ2dmaOHHi314X604EVQAAAIM988wz8vPzczyeeuopJSUlaciQISpVqpRmzpypNWvW3PCtpurWrasaNWpcc92ECRNUp04dNW3aVEFBQWrcuLHjjgI1atTQ7Nmz1bt3b0VERCgtLU3169d32XHml8Vut9sNe3WD2Gw2t9XelZDuttooeuonhhR43/RdCS7sBEVdSP3EAu87hPc15MOkm3hf+zthYWFuq321+NiDLq/p72/RjDlVXF63KGNGFQAAAKZEUAUAAIApEVQBAABgSgRVAAAAmBJBFQAAAKbEN1MBAABcxT/A4vqa/swP5hdBFQAA4Coz3uE2UmZAtAcAAIApEVQBAABgSpz6BwAAuMonbvhmKk9/i1ryzVT5wowqAAAATImgCgAAAFMiqAIAAMCUCKoAAAAwJYIqAADALS4mJkYzZ840ug2XI6gCAAAYKCYmRhaLRdu2bXNaPnDgQFksliIZQG+UqW9PlZ2drZkzZ+rbb7/V+fPnFRYWpq5duyomJkaS1KdP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rVmzRl988YXGjBmj9957T1WqVNFrr71W6L8LwOwIqshj3759unz5sjp27ChPT0/deeeduuuuuyRJn332me688041bNhQHh4eql69uho2bKht27Y59m/QoIFq1KghDw8PtWjRQr/++qtT3S5dusjT01P16tVz1L3R2vfcc4/q1Kkji8UiHx+fQvqNwAyaNGmiUqVKyWq1qlmzZipbtqz279+vL774Qm3btlVkZKT8/Pz06KOPOvax2+1at26d+vTpo5CQEPn4+KhHjx7atm2bcnJyDDwaGOn22293vM+0aNFCNptN586d05kzZ/TVV19pwIABCg4OloeHh2rWrCkvLy99/fXXCg8P1wMPPCAPDw/dc889qlevnrZs2eKo26BBA1WvXl0eHh5q2rSpbDabYmNj5eXlpTvvvFN+fn6OP7zXrl2rnj17KjIyUp6ennr00Ud18OBBnTp1yqhfC2BKnPpHHqdPn1bJkiVltf7v75iwsDBduHBBJ0+e1FdffeUUBnJychQTE+N4Hhoa6vjZx8dHmZmZ160bHh6uixcvStIN1ea0WPG1adMmffDBBzp58qQkKSMjQ+fOndPp06edxsWffz579qwyMzM1dOhQp1oWi0Xp6el5Lj1B8XD1e5T0+3g6e/asAgICFBwcnGef06dPKzIy0mlZRESE0tLSHM9DQkKc6gYGBsrT09NpWUZGhiTpxIkTeu2115zeD61Wq2w2m8LDw2/yCIGig6CKPEqWLKnTp08rNzfX8SZqs9nk6+ur8PBwNWvWTIMGDXJJ3VOnTjm+1eVGav/5TR3Fx8mTJ5WYmKiXX37ZMVs/cOBA2e12lSxZUjabzbHtn38uUaKEvL29NXXq1DwhA7jaH384nzt3TiVKlHBaV7JkSccfSX84efKkqlatWuDXevrpp1W7du0C9wsUB/xfH3ncfvvt8vHx0apVq5STk6Pvv/9eu3fvliTFxMTom2++0c6dO5WTk6Ps7Gz9/PPPTteR/l3dFStW6MqVK9q7d6+j7s3WRtH2x6z8HzNdmzZtUmpqqiSpWbNmWrNmjU6ePKmMjAwtWbLEsZ/VatWDDz6od955R6dPn5Ykpaena8eOHYV8BLgVhIaG6t5779WMGTN07tw55eTk6KefflJ2drbq16+vkydPauPGjcrJydE333yjPXv2qGnTpgV6rdatW2v+/Pk6duyY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\n", "text/plain": [""]}, "metadata": {}, "output_type": "display_data"}, {"data": {"text/plain": [""]}, "execution_count": 5, "metadata": {}, "output_type": "execute_result"}], "source": ["from plotnine import ggplot, aes, geom_col\n", "\n", "(ggplot(df, aes(x='variable', y='value', fill='category')) + geom_col())"]}, {"cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [{"data": {"image/png": "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gw8+KG9vb/Xs2fOqtnMmRkQBAECJNXPmTLVq1Ur33nuvhg0bpqCgIH377bcKDg7Wfffdp3nz5mnkyJHq2rWrdu/erRUrVhRo49Zbb9WyZcv03nvvqXz58qpQoYIqVKiguXPn6sEHH9TFixfVoUMH+fr6KiEhQZs3b9Zzzz2nGjVq6OGHH9b06dPVsWNHPfvss7LZbJo0aZLKlStnH4WVpAkTJqhJkyZq3769Ro0apZSUFD311FOqVauWevfufVXHGhISoi5dumjdunV69NFH5ePj47DzeL0YEQUAACVWs2bNtG3bNlksFsXExKhbt256++23FR4ervbt22vWrFl655131LlzZ33xxRfatGlTgTbGjBmjpk2bqn///rrzzjvtd6z37NlT77//vn766Sf16dNHnTt31pw5cxQREaGwsDBJkre3tz7++GOVKVNGDz74oMaMGaMnn3xS1apVU+nSpe37uOOOO7RlyxZdunRJPXr00GOPPaaWLVvqk08+kZeX11Uf7x/fWf3zI6RMstiK4e2Af3xB2FlGnB3t1PZvRLHVlyo1NZUv9TvY2dEjTJdwXQJnz3dKu1arVUFBQfQ1OB19zYzg4GDTJRQJycnJuummm/TEE09o0qRJDm27f//++u6777R//36Htnu9uDQPAABg0KxZsxQWFqaIiAidOHFCs2fPVl5enkMfrbR//37FxcUpNjZWCxYscFi7hUUQBQAAMMhqtWr69On67bffVKpUKTVq1EiffvqpKleu7LB9dOrUSWfOnFF0dLTxZ4f+GUEUAADAoNGjR2v0aOd+7S8+Pt6p7V8vgigAAChxTq1dpcxfDjm83SrjJzu8zeKMIAoAAEqcrN+OKuvgT6bLKPF4fBMAAACMIIgCAADACIIoAAAAjCCIAgAAwAiCKAAAgJPNnz9fDRs2lKen5z++G/6FF15Q3bp1FRAQoMqVK2vChAmXfcNXcnKygoOD1bhxY2eV7XQEUQAAACerUKGCJk6cqEGDBv3junl5eVqyZImSk5O1Y8cObdq0SbNnzy6w3r///W/VqVPHGeW6DEEUAADAybp166b7779fwcHB/7ju2LFj1bBhQ7m7uys8PFx9+/bVjh078q2zbds2/fLLL+rfv7+zSnYJgigAAEAR9vnnn+u2226zT2dmZmrEiBFasGCBLBaLwcoKjyAKAABQRL388svav39/vleAzpgxQ23atLnhL8tLBFEAAABjhgwZIj8/P/n5+WnIkCH5lq1cuVIzZszQxx9/rLJly0qSDh06pBUrVmjKlCkmynU4XvEJAABgyMKFC7Vw4cIC81evXq3Ro0dr69atuuWWW+zzd+7cqWPHjikiIkLS75fpMzIyFBwcrF9//VUBAQGuKt0hCKIAAABOlpOTY//k5eUpIyNDVqtV7u7uBdZds2aNRo0apY8//jjfd0MlqVevXrr33nvt0+vWrdOKFSv07rvvyt/f3+nH4WhcmgcAAHCyadOmydvbW9OnT9e6devk7e19xUc5jR8/XmfPnlXz5s3tl+3btWsnSfLx8VGlSpXsn6CgIHl4eKhSpUo35I1LjIgCAAA42eTJkzV58uSrWvfIkSNX3W5MTIxiYmKur6gigBFRAAAAGEEQBQAAgBEEUQAAABhBEAUAAIARBFEAAAAYQRAFAACAETy+CQAAlDiV/z3OdAkQI6IAAAAwhCAKAAAAI7g0DwAASpzfvp6tjJR9Dm+3eusVDm+zOCOIAgCAEseWlyPlZZsuo8Tj0jwAAACMIIgCAADACIIoAAAAjCCIAgAAwAiCKAAAgBNlZmZq4MCBqlq1qvz9/VW7dm2tWrXKvjwiIkLe3t7y8/OTn5+fateu/bftTZ48We7u7vb1/fz8tH379gLrJScnKzg4WI0bN3b4MTkKd80DAAA4UU5OjipUqKBPPvlEERER2rVrlzp06KCbbrpJkZGRkqS3335bbdu2veo2u3fvrtjY2L9d59///rfq1Kmj9PT0QtXvTIyIAgAAOJGvr6+effZZ3XTTTXJzc1OzZs3UtGlT7dq1y2n73LZtm3755Rf179/faftwBIIoAACAC128eFFff/21brvtNvu86OhohYSEKCoqSjt37vzHNj744AOVLVtWt956q2bNmqW8vDz7sszMTI0YMUILFiyQxWJxyjE4CkEUAADARWw2mx5++GHdddddat26tSRp5cqVio+PV2Jioh544AG1a9dOCQkJV2yjZ8+e+uGHH3TmzBmtXLlSixcv1n/+8x/78hkzZqhNmzaqU6eO04+nsAiiAAAALmCz2TRkyBAdO3ZMa9eutY9WNmvWTN7e3vL29tbQoUPVoEEDffDBB5Kkdu3a2W9Ieu655yRJtWvXVsWKFeXm5qY77rhDEyZM0Lp16yRJhw4d0ooVKzRlyhQzB3mNuFkJAADAyWw2m4YPH67vvvtOW7dula+v7xXXdXNzk81mkyR7IP07f15/586dOnbsmCIiIiT9fpk+IyNDwcHB+vXXXxUQEFD4g3EgRkQBAACcbMSIEdqzZ48++uijfGEwMTFR27dvV1ZWlrKysrR48WLt3bvXftn+cjZu3KiUlBRJ0vfff6/p06era9eukqRevXrp8OHDiouLU1xcnJ599lnVqVNHcXFx8vf3d+5BXgdGRAEAAJwoISFBCxYskKenpypXrmyfP378eN1///0aOXKkDh8+LA8PD9WqVUubNm1StWrVrtjem2++qYEDByojI0PlypXTww8/rCeffFKS5OPjIx8fH/u6QUFB8vDwUKVKlZx3gIVAEAUAAHCi8PBw+6Xzy4mLi7um9lavXn3V68bExCgmJuaa2nelInVpPi0tTX379tXo0aPt8xISEjR69Gj16NFDI0aM0IEDBwxWCAAAAEcpUkF0yZIl9i/XSr+/iWDatGmKjIzUmjVr1L17d02fPl0XLlwwVyQAAAAcosgE0f379+vkyZNq2bJlvnmZmZnq2rWr3N3d1bJlS4WFhTn1TQQAAABwjSIRRLOzs/Xqq69qyJAh+d4AkJiYqPDwcLm5/X+ZVatWVWJiookyAQAA4EBF4maldevWqUGDBoqIiNAvv/xin5+enl7gOVu+vr66dOlSvnlJSUlKSkqyT7u5uSkkJMS5RaMAq9VqugQUEc7qC3+0S1+Ds9HXANcwHkSPHz+ubdu26cUXXyywzNvbu0DovHTpkry9vfPNW79+vRYvXmyfjomJ0YgRI5xTsCQlO6/pG9WHvQ+bLqFIahtbvVDb36hdLSgoyKntF7UHMhcHvQ9/aLoESVJs9bamS8iHvgY4l/Eg+uOPPyo5OVkDBw6U9PsNSllZWerbt69GjhyphIQE5eXl2S/PHzlyRG3b5v9F1b17d7Vo0cI+7ebmptTUVNcdBHAFJbUfOuu4rVarAgIClJaWptzcXKfsA2YVlb8z9DUznP2P2D+rfNc4l+0LV2Y8iDZr1kz16tWzT+/cuVOfffaZJk6cqMDAQLm7u2vjxo3q1KmTdu3apZMnTyoyMjJfG8HBwQoODrZPJyUl8YsDRUJJ7YfOPu7c3NwSe26Lu6L250pfA5zLeBD19PSUp6enfdrPz0+lSpWyB8uJEydq/vz5Wr16tcLCwjR+/Pgi+YoqAAAAXBvjQfSv7rnnHt1zzz326YiICM2ePdtgRQAAoLj57OhMncq8tjcaXY3e1WMd3mZxViQe3wQAAICShyAKAAAAIwiiAAAAMIIgCgAAACMIogAAADCCIAoAAOBEMTEx8vDwkJ+fn/2TmJhoXx4VFSUvL698y0sKgigAAICTPfHEE7pw4YL9U6VKlXzL582bl2/5lcTExGjp0qVOrtZ1CKIAAAAwgiAKAADgZIsWLVKZMmVUr149LVmypMDyp59+WmXLltVdd92l9957z0CFZhBEAQAAnOhf//qXDh48qDNnzujFF1/UmDFjtH79evvyWbNm6ZdfftGJEyc0btw49e7dW1999ZXBil2HIAoAAOBEt99+u4KDg2W1WhUVFaXhw4dr3bp19uWNGjVSQECAPDw81K1bN/Xo0UMbNmywLw8MDLR/Vq9erWHDhtmnhw0bZuKQHKbIvWseAACgOHNzc5PNZrvq5WfPnrX/HBMTo6ioKMXExDizRJdhRBQAAMCJ3nzzTZ0/f155eXnasWOH5s+fr65du0r6PWR+8MEHSk9PV25urt599129+eab6ty5s+GqXYMRUQAAACeaP3++Hn30UeXm5qpKlSqaOnWqevfuLUnKzs7WpEmT9OOPP8rNzU3Vq1fX8uXL1bRpU8NVuwZBFAAAwIm++OKLKy4LCQm5phuTitMzRCUuzQMAAMAQgigAAACMIIgCAADACIIoAAAAjCCIAgAAwAjumgcAACWOr3uIAnIrmy6jxCOIAgCAEueucgNMlwBxaR4AAACGEEQBAABgBJfmAQBAiTPz6BzFZe53eLux1Zc6vM3ijBFRAAAAGEEQBQAAgBEEUQAAABhBEAUAACgBoqKitHDhQtNl5EMQBQAAcLKoqCh5eXnJz8/P/tm4caPpsozjrnkAAAAXmDdvnoYMGWK6jCLlukZEDxw4oN69e6tatWry9PTUt99+K0maMGGCPvjgA4cWCAAAUFydPHlSDzzwgMLCwlS5cmVNnjxZeXl5kqSlS5eqcePGGjdunMqWLasKFSro7bff1rZt21SrVi0FBgZqyJAhstlskqS0tDR16tRJoaGhCgoKUvv27ZWYmHjFfa9YsUK1a9dWYGCgmjdvrgMHDrjkmP/smoPoli1b1KBBA8XHx6t3797Kzs62L3N3d9eCBQscWiAAAEBxlJeXp86dO6t69epKSEjQl19+qXfeeUevv/66fZ1vvvlGVatW1enTpzV16lQNHDhQCxcu1M6dO/XDDz/o7bfftg8C5uXlKTo6WvHx8UpMTJSvr6+GDRt22X2/9957evrpp7VmzRolJyerX79+6tSpk7Kyslxy7H+45iD61FNPqXfv3tqzZ4+mTJmSb1mDBg303XffOaw4AACA4uKJJ55QYGCgAgMDFR4erq+//lpHjx7VtGnT5OXlpQoVKuiJJ57QmjVr7NtUqlRJgwcPltVqVZ8+fZSSkqKhQ4cqKChIFSpUUIsWLexXpgMDA9WjRw/5+PjI399fEyZM0Oeff37ZWv773/9q7Nixqlu3rqxWqwYPHiyLxaI9e/a45Fz84ZqD6P/+9z899NBDkiSLxZJvWWBgoJKSkhxTGQAAQDEyd+5cnT17VmfPnlVCQoLi4+N15swZBQUF2QPq8OHDderUKfs2YWFh9p99fHwuO+/ChQuSpEuXLmnw4MEKDw9XQECA7r77bl24cEGZmZkFaomPj9eTTz5p329gYKBOnDihY8eOOevwL+uab1YqU6aMjh8/ftllBw8eVPny5QtdFAAAQHFXpUoVVapUSfHx8Q5pb86cOfrhhx+0Z88elS9fXvv27VP9+vXt3yH9677HjBmjmJgYh+z7el3ziOj999+vSZMm6eeff7bPs1gsOnnypGbPnq3u3bs7tEAAAIDi6M4771RISIimTp2qixcvKi8vT4cOHbri5fR/cv78eXl7eyswMFCpqamaOnXqFdcdOnSoZs6cqX379slms+nChQt67733dP78+es9nOtyzUF0xowZCgkJUd26ddWoUSNJ0iOPPKKaNWuqdOnSmjx5sqNrBAAAKHasVqvee+89HTx4UDfffLOCgoLUq1cvnThx4rrae+yxx5SVlaWQkBA1atRI99133xXX7dKliyZNmqTo6GgFBgbq5ptv1ooVK673UK6bxXa58dp/kJ2drZUrV2rLli1KSkpSmTJldO+996p///7y8PBwRp3XxNnfUx1xdrRT278RxUycaLqEIqnh/MBCbX929AgHVeJagbPnO6Vdq9WqoKAgpaamKjc31yn7KKlGnP3adAmSpPmBDU2XIIm+ZkpwcLDL9jXz6BzFZe53eLux1Zc6vM3i7LoeaO/u7q6HH35YDz/8sKPrAQAAQAnBKz4BAABgxDWPiLq5uRV4bNNfcRkDAAAA/+Sag+jzzz9fIIimpKRoy5YtOnXqlEaOHOmw4gAAAFB8XXMQHT368jfqTJ8+Xf369VNaWlqhiwIAAEDx59DviPbv31+LFi1yZJMAAAAopq7rrvkrOXjwIN8PBQAARV49nzoKKhVkuowS75qD6Ny5cwvMy8rK0o8//qh169bpwQcfdEhhAAAAztKubGvTJUAO+o6op6enKlWqpFGjRunpp592SGEAAAAo3q45iObl5TmjDgAAAJd5N+kXxWc6/gbrf1Vs4PA2izOHfkcUAADgRvBDerLiMlMc3u6/HN5i8XZVQXTDhg3X1Gi3bt2uqxgAAACUHFcVRHv06HHVDVosFuN3znt4eMjT09N5OzjrvKZRvPj7+xdq+xu1q539eoTT2k52Wsu/q9xymZP3UEQVkc5W2L8zjvLHi1t8fX1ls9kMVwMUX1cVRI8cOeLsOhwqKytLWVlZpssAdP78edMl4BrxZ2ZWUTn/VqtVHh4eunjxovHBlZLEqYNIKJKuKoiGh4c7uw4AAIASa8iQIQoLC9OUKVP+cd3Jkyfrp59+UmxsrAsqcy6HvlkJAAAABUVFRWnhwoX55v3000/2r4EsXLjwqkJocXNdQXTlypVq1qyZQkNDFRAQUOADAAAA/JNrDqIrV67UwIEDddtttykpKUm9evVS9+7d5eHhodDQ0Ms+8B4AAABXFhMTo3Hjxtmn//Of/6hixYoKCwvT3LlzVa5cOW3bts2+PDs7W4MGDVLp0qVVvXp1bd261UDVhXfNQXTOnDl6+umn9corr0iShg0bpjfeeENHjhxRSEiI/Pz8HF4kAABASbFlyxY999xz2rx5sxISEnTkyBElJSXlW2fTpk3q2LGjUlJSNHz4cD3yyCOGqi2caw6ihw4dUtOmTWW1WmW1WpWW9vtbCfz9/TV27Fi99NJLDi8SAADgRvfEE08oMDDQ/rnrrrsuu96aNWsUHR2t+vXry8vLS9OnTy/wZsvIyEh16dJFVqtV0dHROnr0aIGweiO45iBaunRpZWZmSpIqVqyoH374wb4sNzdXycnOfsofAADAjWfu3Lk6e/as/fPVV19ddr3jx4+rcuXK9umAgACVLl063zrlypWz/+zj4yNJunDhghOqdq5rfsVnw4YN9f3336tNmzbq3LmzpkyZory8PLm7u2vmzJlq1KiRM+oEAAAoESpUqKCjR4/ap9PS0nTu3DmDFTnPNQfRp556SgkJCZKkZ599VgkJCXr88ceVm5urO++8U4sWLXJ4kQAAACXFAw88oIceekj9+/dXzZo19fTTT8vNrXg+cfOag2hcXJx69uwpSQoMDNQ777yjzMxMZWZm8ugmAACAQmrTpo3GjBmjtm3bKicnR2PHjlXp0qWL5ZunLLZrfInuHyfhnnvuUd++fdWlS5cid6e8s7+sO+Isj6j6q5iJE02XUCQ1nB9YqO3PjnbeO9udqrfpAq5fYMP5pkswYsTZr02XIEmaH9gIMwvUAAAgAElEQVTQdAmSfn/FZ1BQkFJTU3nFpwsFBwe7bF8zj36luMwUh7cbW72tw9tMTU1VmTJldPToUVWqVMnh7Zt0zeO8J0+e1Pz585WZmano6GiFhYWpV69eeuedd3i/OwAAgANs2LBBmZmZSktL0+OPP65GjRoVuxAqXUcQDQoK0qBBg/TJJ5/o2LFjeu655/Tbb7+pa9euCgsL04ABA5xRJwAAQImxZMkShYaGKjw8XCdPntSaNWtMl+QUhfrma1hYmEaNGqVdu3bpww8/lK+vr5YuXeqg0gAAAEqmTZs26dy5c0pNTdWHH36oqlWrmi7JKa75ZqU/++233xQbG6vY2Fh99913Cg4O1tChQx1VGwAAAIqxaw6iZ86c0bp167RmzRrt3r1bfn5+uv/++zV9+nTde++9slqtzqgTAAAAxcw1B9EKFSrI3d1d7du319q1a9WxY8di+TgBAAAAONc1B9HXXntN3bp1k7+/vzPqAQAAcLpxlS//nne41jUH0ejoaGfUAQAAgBKmeL4vCgAAAEVeoe6aBwAAuBEt3HNCP57JcHi7L3Yqno9ZchaCKAAAKHHOpufo1EVe32oal+YBAABgBEEUAAAARhBEAQAAYARBFAAAAEZwsxIAAJcR0/uw6RLsJupr0yXYBc6/13QJN6SoqCj17t1bQ4YMMV1KkcKIKAAAAIwgiAIAABjy/vvvq27duipdurQaN26sr776ynRJLkUQBQAAMODQoUPq0aOHZsyYoeTkZA0YMEDt2rVTamqq6dJchiAKAABgwNq1a9WmTRt16NBBpUqV0qBBg1S5cmVt3rzZdGkuQxAFAAAw4NixY4qIiMg3LyIiQseOHTNTkAEEUQAAAAMqVqyohISEfPPi4+NVsWJFQxW5HkEUAADABXJycpSRkWH/9OrVSx999JE++ugj5eTkaMmSJUpMTFT79u1Nl+oyPEcUAADABUaOHKmRI0fap1u0aKHY2FiNHj1aiYmJqlmzpjZv3qwyZcoYrNK1CKIAAABOtm3btisu69Spk+sKKWK4NA8AAAAjCKIAAAAwgiAKAAAAIwiiAAAAMIIgCgAAACMIogAAADCCxzcBAIASZ1zLyqZLgBgRBQAAgCEEUQAAABjBpXkAAFDizJl5VPvjMh3e7tLY6g5vszhjRBQAAABGEEQBAABgBEEUAAAARhj/jmh2drYWLlyoffv26fz58woODlbPnj0VFRUlSUpISNDLL7+s+Ph4lStXTkOHDlXt2rXNFg0AAIBCMz4impubqzJlymjatGlas2aNhg8froULF+qnn35STk6Opk2bpsjISK1Zs0bdu3fX9OnTdeHCBdNlAwAAFBuNGzfW0qVLXb5f40HUy8tLffv2Vbly5eTm5qZatWrp1ltv1Y8//qj9+/crMzNTXbt2lbu7u1q2bKmwsDDt2rXLdNkAAABXLSoqSgsXLixUG/Hx8bJYLKpRo0a++dnZ2QoNDZXFYlFGRkah9uFqxoPoX2VkZOjw4cMKDw9XYmKiwsPD5eb2/2VWrVpViYmJBisEAAAwx2Kx5BuU27Rpk8qUKWOwoutXpIKozWbTiy++qJtvvlkNGjRQenq6fH19863j6+ur9PT0fPOSkpL0008/2T8pKSmyWq1O+wBXi75243Hm746i/CkqTJ+HonhOihrOuWO9//77qlu3rkqXLq3GjRvrq6+++sdtoqOj811GX7p0qaKjo/Otk5WVpaeeekoREREKDg7Wgw8+qNTUVPvy2NhY3XTTTQoKCtLo0aMddjzXyvjNSn+w2WxasGCBkpOT9eyzz8piscjb21uXLl3Kt96lS5fk7e2db9769eu1ePFi+3RMTIxGjBjhvGKTndc0ipegoKBCbU9Xc72PkoeaLuG69K4eW7gGikhnK+zfGcc6bbqAIqlo/Rnd2A4dOqQePXpo3bp1atOmjd544w21a9dOhw8f/tvz3K9fP91xxx166aWXdP78ee3atUuzZs3S+PHj7es89dRTOnDggL766iv5+/tr6NChGjFihFatWqWff/5ZjzzyiN599121aNFCs2bN0tdff+2KQy6gSARRm82mhQsX6tdff9XUqVPl5eUlSapSpYo2bNigvLw8++X5I0eOqG3btvm27969u1q0aGGfdnNzy5f6AVPoh3CV4tLXispxlNTRuavhzD+jkhZy165dqzZt2qhDhw6SpEGDBumVV17R5s2b1a9fvytuFxoaqsjISG3cuFEnTpxQt27d7NlJ+j1Xvfrqq9q7d69CQ0MlSVOnTlW1atW0bNkyrV27Vu3atdO9994r6ffQ+uKLLzrxSK+sSATRV199VT///LOmTZsmHx8f+/w6derI3d1dGzduVKdOnbRr1y6dPHlSkZGR+bYPDg5WcHCwfTopKUm5ubkuqx+4EvohXKW49LXichzFGX9GjnPs2DFFRETkmxcREaFjx45p+/btateunX3+X58YFBMTo0WLFunkyZP673//m2/ZmTNndPHixQJ5yc3NTadOndLx48dVpUoV+3yr1aqKFSs66KiujfEgevr0ab3//vtyd3fXI488Yp/fo0cP9erVSxMnTtT8+fO1evVqhYWFafz48fL39zdYMQAAQOFVrFhR3377bb558fHx6tGjh5o3b/63j6vs1KmThgwZojJlyigyMlLx8fH2ZcHBwfL29lZcXFyBoCtJFSpU0L59++zTubm5OnbsWKGP53oYD6KhoaF69913r7g8IiJCs2fPdmFFAAAAjpeTk5Pv8Uq9evXSjBkz9NFHH+mee+7R8uXLlZiYqPbt2/9jW+7u7vr444/l6elZYJmbm5sGDx6sxx9/XAsWLFD58uV1+vRp7d69W126dFHPnj01c+ZMffrpp2revLleeOEFY1+LKVJ3zQMAABRXI0eOlLe3t/3z6KOPKjY2VqNHj1bZsmW1cOFCbd68+aofxVS/fn3deuutl102c+ZM1a1bV82aNZO/v7+aNGlivyP/1ltv1eLFizVgwACFhoYqOTlZDRs2dNhxXgvjI6IAAADF3bZt2664rFOnTlfVRkREhGw221Ut8/T01JQpUzRlypTLrt+3b1/17dv3qvbrTIyIAgAAwAiCKAAAAIwgiAIAAMAIgigAAACMIIgCAADACO6aBwAAJY6Xl5t8fC2myyjxCKIAAKDEGf6YmVdaIj8uzQMAAMAIgigAAACM4NI8AAAocb6aeVQpcZkOb7dtbHWHt1mcMSIKAAAAIwiiAAAAMIIgCgAAACMIogAAADCCIAoAAHADiIqK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\n", "text/plain": [""]}, "metadata": {}, "output_type": "display_data"}, {"data": {"text/plain": [""]}, "execution_count": 6, "metadata": {}, "output_type": "execute_result"}], "source": ["from plotnine import geom_bar\n", "\n", "(ggplot(df, aes(x='variable', y='value', fill='category'))\n", " + geom_bar(stat='identity', position='dodge')) "]}, {"cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [{"data": {"image/png": "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royMDD355JNqaGjQE0880em5jz32mObOnau//e1v2rVrl5544gkFBgbq6aefPuN7euCBB/Tqq6/qxz/+saZMmaL09HQ9+uijCg4O1t13330eWwuAzxgAcAbXXXedcckll3S6b/bs2cZVV111ynPb29uN1tZW47vf/a4xbdo0z/0ff/yxIcm49957T3nNrFmzjAULFpx23R3LW716tZGYmOi5Pzc315BkzJw5s9PzH3/8cSMkJMSorKzstN4dO3YYhmEYR44cMSwWi/Hyyy93et3DDz9s9O3b13C73V+1KQD4KYaWAJzR8uXLtXXrVhUUFEiSSkpK9Omnn+pb3/qWJKmqqkrf+973NGDAANntdtntdr3yyis6dOjQKcuaP3/+167P5XLpySef1JAhQ+RwOGS32/XjH/9YxcXFqq+v7/TcxYsXd7p93XXXqbGxUfv27Tvtsj/88ENJ0pIlS9TW1ub57/LLL1dJSYkKCwu/foMA8DsEGQBntHDhQoWHh2vdunWSpDfffFOBgYG69tprJUm33HKL3njjDT300EP697//rR07dui2226Ty+U6ZVnx8fFfu75HH31U//3f/60777xT7777rnbs2KHHH39ckk5Z5peX13G7uLj4tMt2Op0yDEOxsbGe0GW32zVv3jxJIsgAJsUcGQBnFBQUpGuvvVbr1q3TI488onXr1mnBggWKiIiQy+XSO++8o2effVb333+/5zWnm5grSRaL5WvX99Zbb+muu+7So48+6rnvnXfeOe1zy8rKTns7MTHxtM+PiYmRxWJRWlqaAgMDT3l8+PDhX1sfAP9DkAHwlZYvX66//OUvev/997Vt2zatX79ektTc3Cy3290pFNTV1ekf//jHOa+rqamp0/LcbrenN+jL/vd//1ff//73Pbc3bNigkJAQjR079rTPv/zyyyVJFRUVWrRo0TnXCMC/EGQAfKUrrrhCcXFxuu222xQREeGZ6xIZGanJkyfr6aefVlxcnAICAvT0008rMjLylN6Ss3XllVdqzZo1GjVqlOLi4vTiiy+qubn5tM89evSobr31Vi1btky7du3Sf/3Xf+nBBx9UdHT0aZ8/bNgw3Xffffr2t7+thx9+WFOmTFFra6sOHTqkjz/+WBs3bjynmgH4FnNkAHylgIAALV26VMePH9fixYsVFBTkeWzt2rUaPHiwbr75Zn3ve9/T9ddff8ph113x/PPPa9asWbr//vt12223aezYsXrsscdO+9zVq1d7DgP/1a9+pXvvvVerV6/+yuX/9re/1apVqzxDZCtWrNC6des0a9asc64ZgG9ZDMMwfF0EAADAuaBHBgAAmBZBBgAAmBZBBgAAmBZBBgAAmBZBBgAAmBZBBgAAmBZBBgAAmBZBBgAAmBZBBgAAmBZBBgAAmBZBBgAAmBZBBgAAmNb/B13+PCRrWO6mAAAAAElFTkSuQmCC\n", "text/plain": [""]}, "metadata": {}, "output_type": "display_data"}, {"data": {"text/plain": [""]}, "execution_count": 7, "metadata": {}, "output_type": "execute_result"}], "source": ["from plotnine import position_dodge, geom_text, lims\n", "\n", "dodge_text = position_dodge(width=0.9) # new\n", "\n", "(ggplot(df, aes(x='variable', y='value', fill='category'))\n", " + geom_bar(stat='identity', position='dodge', show_legend=False) # modified\n", " + geom_text(aes(y=-.5, label='category'), # new\n", " position=dodge_text,\n", " color='gray', size=8, angle=45, va='top')\n", " + lims(y=(-5, 60)) # new\n", ")"]}, {"cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [{"data": {"image/png": "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RERExLAUZERERMSwFGRERETEsBRkRERExLAUZERERMSwFGRERETEsBRkRERExLAUZERERMSwFGRERETEsBRkRERExLAUZERERMSwFGRERETEsBRkRERExLAUZERERMSwFGRERETEsBRkRERExLAUZERERMSwFGRERETEsBRkRERExLAUZERERMSwFGRERETEsBRkRERExLAUZERERMSwFGRERETEsBRkRERExLAUZERERMSwFGRERETEsBRkRLqQUaNGMX78eFJTU0lNTeWdd94B4NSpU8yaNYuxY8cybdo0srOzAWhqamLx4sWkpqayZMkSHA4HAHa7nbS0NCorKz22LiIil0NBRqSLefXVV0lPTyc9PZ25c+cCsGrVKhYtWkRGRgbLly/noYceAmD79u2EhYWRnp6O1Wpl27ZtAKxdu5alS5cSFhbmsfUQEbkcCjIiXVxpaSmHDx9mwYIFAKSlpZGfn4/NZsPHx4f6+noA6uvr8fX1JTMzk5MnTzJnzhxPli0iclkUZES6mGXLljFp0iQeeughysrKKCoqIiYmBh8fHwBMJhPx8fEUFhaSmppKSEgIqampWK1WUlJSWL16NWvWrPHwWoiIXB4fTxcgIh3nr3/9K/Hx8TQ1NfH000+zfPlyHn74YUwmU5vnOZ1OAMxmM88++6zr/g0bNjBz5kwcDgf33XcfDQ0NLF26lJSUlE5dDxGRy6UgI9KFxMfHA+Dr68uPf/xjxo0bR8+ePSkqKsLhcODj44PT6eT06dOu57YqKChg69atvPXWWyxfvpzFixczYsQIZsyYwc6dOz2xOiIi/5KGlkS6iNraWs6fP++6/c477zB8+HAiIyMZPnw4mzZtAuC9994jISGBhISENss/+uijPPHEE5jNZurq6oALw1Ct/xYR8UbqkRHpIkpLS7n77rtpaWnB6XTSu3dvXnjhBQDWrVvHihUreO655wgNDWX9+vVtlt28eTNDhw5l0KBBADzwwAOsXLmSxsZGVq5c2enrIiJyuUzO1sHyLqSsrMytr7+8cpVbX9+INib9iYqKCpqbmz1dinRhFouF8PBwtTVxO7U1z4iIiGj3MhpaEhEREcPqkkNLfn5++Pv7u+8NdLLTbxUcHEwX7ODzqIL7fujpEq5Ir5f+r1tet/XoK7U1cTe1NePokkGmsbGRxsZGT5dxzamtrVUXrABQXV3tlte1WCz4+fmprYnbqa15xpV0QmhoSURERAxLQUZEREQMS0FGREREDEtBRkRERAxLQUZEREQMS0FGREREDEtBRkRERAxLQUZEREQMS0FGREREDEtBRkRERAxLQUZEREQMS0FGREREDEtBRkRERAxLQUZEREQMS0FGREREDEtBRkRERAxLQUZEREQMS0FGREREDEtBRkRERAxLQUZEREQMS0FGREREDEtBRkRERAxLQUZEREQMS0FGREREDEtBRkRERAxLQUZEREQMS0FGREREDEtBRkRERAxLQUZEREQMS0FGREREDEtBRkRERAxLQUZEREQMS0FGREREDEtBRkRERAxLQUZEREQMS0FGREREDEtBRkRERAxLQUZEREQMS0FGREREDEtBRkRERAxLQUYM5Te/+Q2RkZFkZWUBcOrUKWbNmsXYsWOZNm0a2dnZADQ1NbF48WJSU1NZsmQJDocDALvdTlpaGpWVlR5bBxEj0mdPvJWCjBjGoUOH2LdvH/Hx8a77Vq1axaJFi8jIyGD58uU89NBDAGzfvp2wsDDS09OxWq1s27YNgLVr17J06VLCwsI8sg4iRqTPnngzBRkxhIaGBn7xi1/wzDPPYDKZACgtLeXw4cMsWLAAgLS0NPLz87HZbPj4+FBfXw9AfX09vr6+ZGZmcvLkSebMmeOx9RAxGn32xNspyIgh/Od//ifz58+nd+/ervuKioqIiYnBx8cHAJPJRHx8PIWFhaSmphISEkJqaipWq5WUlBRWr17NmjVrPLUKIoakz554Ox9PF3Cxqqoqli1bRmxsLGvXrgUgPz+f559/nry8PGJiYli2bBlDhw71cKXSmfbu3cuBAwf45S9/ecljrb8QWzmdTgDMZjPPPvus6/4NGzYwc+ZMHA4H9913Hw0NDSxdupSUlBT3Fi9iYPrsiRF4VY/Mq6++SmJiouu2w+HgySefZPz48bz55pvMmzePp556ipqaGs8VKZ1u9+7dnDhxghtuuIFRo0ZRVFTEwoULycrKoqioyDWZ0Ol0cvr06Tbj+AAFBQVs3bqVu+++m1//+tcsXryY9evX8/DDD3tidUQMQ589MQKvCTJHjhyhuLiYKVOmtLmvoaGBuXPn4uvry5QpU4iOjmb37t0erFQ624MPPsjRo0fZv38/+/fvp2fPnrz99tvceeedDB8+nE2bNgHw3nvvkZCQQEJCQpvlH330UZ544gnMZjN1dXXAhV+Trf8WkW+nz54YgVcMLTU1NfHSSy+xatUqTp065brfZrPRu3dvzOb/n7f69OmDzWbzRJnihdatW8eKFSt47rnnCA0NZf369W0e37x5M0OHDmXQoEEAPPDAA6xcuZLGxkZWrlzpiZJFugR99sRbeEWQ2bRpEyNHjiQxMbFNkKmvryc4OLjNc4ODg5Xmr3H79+93/TspKYkPP/zwO587b968NrdHjRpFenq6u0oT6dL02RNv5PEgU1RURHp6Or/73e8ueSwwMPCS0FJXV0dgYGCb+8rKyigrK3PdNpvNREZGuqdg+U4Wi8XTJYiXcFdbaH1dtTVxN7U14/B4kMnKyqK8vJx7770XuDDBt7GxkbvuuosVK1aQn59PS0uLa3gpNzeXGTNmtHmNzZs38/LLL7tuL1myhOXLl7uv6HL3vbRRfXTnSU+X4JVmbEy6quWN2tTCw8Pd+vpWq9Wtr38tuvPkR54uAYCNSTP+9ZM6kdqa9/N4kJk4cSIjRoxw3d61axfbt2/nscceIywsDF9fX959913S0tLYvXs3xcXFjB8/vs1rzJs3j8mTJ7tum81mKioqOm0dRL7LtdoO3bXeFosFq9VKVVUVzc3NbnkP8Sxv+cyorXnGlfwI8niQ8ff3x9/f33U7JCQEHx8fIiIiAHjsscdYv349b7zxBtHR0TzyyCOEhoa2eY2IiAjX8+HCUJManniDa7Udunu9m5ubr9lt29V5299Vbc37eTzIfNNNN93ETTfd5LqdmJjoOjmeiIiIyMW85jwyIiIiIu2lICMiIiKGpSAjIiIihqUgIyIiIoalICMiIiKGpSAjIiIihqUgIyIiIoalICMiIiKGpSAjIiIihqUgIyIiIoalICMiIiKGpSAjIiIihqUgIyIiIoalICMiIiKGpSAjIiIihqUgIyIiIoalICMiIiKGpSAjIiIihqUgIyIiIoalICMiIiKGpSAjIiIihqUgIyIiIoalICMiIiKGpSAjIiIihqUgIyIiIoalICMiIiKGpSAjIiIihqUgIyIiIoalICMiIiKGpSAjIiIihqUgIyIiIoalICMiIiKGpSAjIiIihqUgIyIiIoalICMiIiKGpSAjIiIihqUgIyIiIoalICMiIiKGpSAjIl5hwYIFTJ48mdTUVG699VaOHDkCwKlTp5g1axZjx47l5ptvJjMzE4CmpiYWL15MamoqS5YsweFwAGC320lLS6OystJj6yIinUdBRkS8wiuvvMJnn31Geno6P/nJT3jwwQcBWLVqFYsWLSIjI4MVK1awdOlSALZv305YWBjp6elYrVa2bdsGwNq1a1m6dClhYWEeWxcR6TxXFGSOHTvGnXfeSb9+/fD392f//v0APProo3z44YcdWqCIXBu6devm+ndVVRVms5nS0lIOHz7MggULALjtttvIzc3FZrPh4+NDfX09APX19fj6+pKZmcnJkyeZM2eOR9ZBRDpfu4PMJ598wsiRI8nLy+POO++kqanJ9Zivry8vvvhihxYoIteO+++/nxEjRvD000+zfv16ioqKiImJwcfHBwCTyURCQgKFhYWkpqYSEhJCamoqVquVlJQUVq9ezZo1azy8FiLSmXzau8DDDz/MnXfeyf/8z//gcDh4+umnXY+NHDmSV155pUMLFJFrxwsvvADAxo0befzxx3n44YcxmUxtnuN0OgEwm808++yzrvs3bNjAzJkzcTgc3HfffTQ0NLB06VJSUlI6bwVEpNO1u0fm6NGjLFq0COCSHUxYWBhlZWUdU5mIXLPuvPNOdu3aRWxsLEVFRa6JvE6nk4KCAuLj49s8v6CggK1bt3L33Xfz61//msWLF7N+/XoefvhhT5QvIp2o3UGme/fuFBUVfetjx48fJzY29qqLEpFrS3V1NcXFxa7b77//PuHh4URGRjJ8+HA2bdoEwF//+lcSExNJSEhos/yjjz7KE088gdlspq6uDrjwQ6v13yLSdbV7aGnOnDn8+7//O+PGjSMpKQm4sMMoLi5m7dq1zJs3r8OLFJGuraqqirvvvhu73Y7ZbKZHjx68/vrrmEwm1q1bx4oVK3juueewWq289tprbZbdvHkzQ4cOZdCgQQA88MADrFy5ksbGRlauXOmJ1RGRTtTuIPP000+zd+9errvuOoYPHw7APffcQ05ODgMHDuTxxx/v6BpFpIuLi4vj448//tbHkpKSXEdDWiwWwsPDqaiocD3+zR9Po0aNIj093W21ioh3aXeQ6datG7t37+a1117jk08+oXv37nTv3p3777+fxYsX4+fn544628XPzw9/f3/3vYHOsyWXKTQ09KqWN2pTq9y33G2vXe62V76g15T/6+Z38FJe0tiu9jPTUVrngAYH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\n", "text/plain": [""]}, "metadata": {}, "output_type": "display_data"}, {"data": {"text/plain": [""]}, "execution_count": 8, "metadata": {}, "output_type": "execute_result"}], "source": ["\n", "dodge_text = position_dodge(width=0.9)\n", "\n", "(ggplot(df, aes(x='variable', y='value', fill='category'))\n", " + geom_bar(stat='identity', position='dodge', show_legend=False)\n", " + geom_text(aes(y=-.5, label='category'),\n", " position=dodge_text,\n", " color='gray', size=8, angle=45, va='top')\n", " + geom_text(aes(label='value'), # new\n", " position=dodge_text,\n", " size=8, va='bottom', format_string='{}%')\n", " + lims(y=(-5, 60))\n", ")"]}, {"cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [{"data": {"image/png": "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YLemywhHlyD1iIYbRERExJSGG0RExCEmj0t1dAl2z3HI0SXYdVnjPF2F6kkQERERUwoJIiIiYkohQUREREwpJIiIiIgphQQRERExpZAgIiIiphQSRERExJRCgoiIiJhSSBARERFTCgkiIiJiSiFBRERETCkkiIiIiCmFBBERETGlkCAiIiKmFBJERETElEKCiDitkpISRo4cSWhoKL1792bEiBFkZGQAkJuby4gRI+jatSvh4eF88cUX9uVmzJhBz549GTZsGAUFBQAYhsGdd97J6dOnHdEUkXpJIUFEnFpMTAzJyckkJCRwzz33EBMTA8C8efOIiori1KlTLFu2jAkTJmCz2Th27BgpKSkcPXqUIUOGsGLFCgCWLl3K0KFD6dy5syObI1KvuDq6ABGR79OkSRPuuusu++2oqCgWLVoEwD//+U/S09MB6N+/P61ateKLL76gTZs2lJaWUllZSVFREa1bt+bs2bOsWbOGrVu3OqQdIvWVehJEpN544403uPfee8nLy6OyspKAgAD7Y8HBwWRlZdGtWzeGDh1K3759SUtLY+LEicyZM4dXX30VV1ftF4n8FAoJIlIvLFiwgFOnTvHHP/4RAIvFUu1xwzDsf7/00kskJCTw4Ycfsm3bNoKCgggODmbKlCmMHj2atWvX1mntIvWVYrWIOL2//OUvbNiwge3bt+Pp6YmnpycAFy5csPcmZGZmEhQUVG25wsJCXnvtNWJjY/nTn/7ErbfeysSJE4mIiOC+++6jadOmdd4WkfpEPQki4tT++te/snr1arZt24aPj4/9/rFjx/Lmm28C8NVXX3Hu3DluueWWass+88wzzJ8/H09PT4qKirBYLFgsFsrLyykrK6vTdojUR+pJEBGnlZOTwxNPPEFISAhDhw4FwMPDgwMHDvDyyy/z8MMP07VrV9zd3VmxYkW1OQf79u2jpKSE6OhoAGbOnMlDDz1kX87b29shbRKpTxQSRMRptW/fvtpcg+u1atXqPx6tMHDgQAYOHGi/3blzZw4ePFjjNYo0ZBpuEBEREVPqSRCROrMmdZyjS/hZxnVZ4+gSRBxCPQkiIiJiSiFBRERETCkkiIiIiCmFBBERETGlkCAiIiKmFBJERETElEKCiIiImFJIEBEREVMKCSIiImJKIUFERERMKSSIiIiIKYUEERERMaWQICIiIqYUEkRERMSUQoKIiIiYUkgQERERUwoJIiIiYkohQUREREwpJIiIiIgphQQRERExpZAgIiIiphQSRERExJRCgoiIiJhSSBARERFTCgkiIiJiSiFBRERETCkkiIiIiCmFBBERETGlkCAiIiKmFBJERETElEKCiIiImFJIEBEREVMKCSIiImJKIUFERERMKSSIiIiIKYUEERERMaWQICIiIqYUEkRERMSUQoKIiIiYUkgQERERUwoJIiIiYkohQUREeOyxxwgODsZisXDs2DH7/adOnWLAgAGEhoYSGRnJiRMnACgvL2fkyJFEREQwatQobDYbACUlJQwePJj8/HyHtENqlkKCiIgwZswYvvjiCzp27Fjt/unTpxMTE0NKSgpPP/00U6dOBWDLli34+vqSmJiIj48PsbGxALz44ovMmjWLli1b1nkbpOYpJIiICIMHD6Z9+/bV7svNzSU+Pp6JEycCMHr0aNLT08nIyMDNzY3i4mIAiouLcXd35+jRoyQnJ/PAAw/Uef1SOxQSRETEVHZ2Nm3btsXV1RUAi8VCUFAQWVlZREdH06JFCyIiIvD29mbYsGHMnTuX119/3cFVS01ydXQBIiLivCwWS7XbhmEAYLVaWbp0qf3+RYsWMXLkSGw2G+PHj6e0tJSZM2cybNiwOq1XapZCgoiImOrQoQM5OTnYbDZcXV0xDIPs7GyCgoKqPS8zM5PNmzcTGxvLpEmTiImJoV+/fkRFRXH8+HEHVS81QcMNIiJiKjAwkD59+rBy5UoA1q9fT3BwMMHBwdWeN3v2bBYuXIjVaqWoqAiLxWL/W+o39SSIiAgzZ87k448/5ty5cwwfPpzmzZuTmprKkiVLmDx5MgsWLMDLy4vly5dXW27VqlVEREQQFhYGwLx585g2bRplZWXMnz/fEU2RGqSQICIivPnmm7z55pvfub9bt27ExcV973Ljx4+vdjsyMpLExMQar08cQ8MNIiIiYko9CSIijci4NamOLsGuiaMLkB+kngQRERExpZAgIiIiphQSRERExJRCgoiIiJhSSBARERFTCgkiIiJiSiFBRERETCkkiIiIiCmFBBERETGlkCAiIiKmFBJERETElEKCiIiImFJIEBEREVMKCSIiImJKIUFERERMKSSIiIiIKYUEERERMaWQICIiIqYUEkRERMSUQoKIiIiYUkgQERERUwoJIiIiYkohQUREREwpJIiIiIgphQQRERExpZAgIiIiphQSRERExJRCgoiIiJhSSBARERFTCgkiIiJiSiFBRERETCkkiIiIiCmFBBERETGlkCAiIiKmFBJERETElEKCiIiImFJIEBEREVMKCSIiImJKIUFERERMKSSIiIiIKYUEERERMaWQICIiIqYUEkRERMSUQoKIiIiYUkgQERERUwoJIiIiYkohQUREREwpJIiIiIgphQQRERExpZAgIiIipiyGYRiOLkJEREScj3oSRERExJRCgoiIiJhSSBARERFTCgkiItKg2Ww2R5dQbykkiMgPKikpcXQJIj9LRkYGW7duJT8/v07XW1ZWVqfrqy0KCb+ADgz513ug9+L7nTlzhsLCQkeX8bMlJSXx6quvcvr0aaf+d/732iorKx1USe0za1td/NuYrcPZ3+eMjAySkpI4ePAgly9frpN15uTksHbtWs6fP18n66tNCgk/k2EYWCwW4Nu9rOLiYgdXVPeufw+c+cfDkc6cOcPjjz/Otm3buHjxov3++vR+ZWVlcfr0aeLi4khPT3faHwWLxYJhGJw5cwYAq/XbzVtaWpojy6pRVXunVquVY8eO8fHHHxMfH09RUREWi6VW/22u/77n5uZy7tw5ey3OqOq9GDJkCCEhISQmJvLll19y5cqVWl93bm4uBQUF7NixgwsXLtT6+mqTy+9///vfO7qI+qjqy/Lpp5+ydetWPvnkEwzDoFOnTvbHGrLrNxjbt29n+/btnDx5kuLiYtq3b+/g6pzHlStXOHjwIDabjaKiIgICAvD09KxXn5GysjIqKyu5evUqKSkpdO3alatXr1JWVkbTpk0dXV41hw8fZtmyZYSGhuLt7c2yZcs4ePAgAwcOrFfvuZnCwkI2bNiAr68v586dY+nSpQCkp6eTkZFBSEgITZo0obKyslbaWvWasbGxrF27lv379/PVV1/RoUMHfHx8anx9v9T126fk5GQqKio4duwYrq6uBAYG0qRJkxpfZ9V736ZNGy5evEhaWhrnz5+nbdu2eHp61vj66oJCwk9Q9cNY9f/Y2FgOHz7M7NmzSUhIIC8vj4EDBzq6zDpR9QXcsmULcXFx3H333ezYsYPy8nL69u3r4OqcR4sWLbh69SqDBg1i165dWCwWioqKyMrKom3btgBO++NVtSd2+fJlzp8/z5QpUzh69Ch79uxh+/bt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\n", "text/plain": [""]}, "metadata": {}, "output_type": "display_data"}, {"data": {"text/plain": [""]}, "execution_count": 9, "metadata": {}, "output_type": "execute_result"}], "source": ["from plotnine import theme, element_rect, element_blank, element_line, element_text\n", "\n", "dodge_text = position_dodge(width=0.9)\n", "ccolor = '#555555'\n", "\n", "(ggplot(df, aes(x='variable', y='value', fill='category'))\n", " + geom_bar(stat='identity', position='dodge', show_legend=False)\n", " + geom_text(aes(y=-.5, label='category'),\n", " position=dodge_text,\n", " color=ccolor, size=8, angle=45, va='top') # modified\n", " + geom_text(aes(label='value'),\n", " position=dodge_text,\n", " size=8, va='bottom', format_string='{}%')\n", " + lims(y=(-5, 60))\n", " + theme(panel_background=element_rect(fill='white'), # new\n", " axis_title_y=element_blank(),\n", " axis_line_x=element_line(color='black'),\n", " axis_line_y=element_blank(),\n", " axis_text_y=element_blank(),\n", " axis_text_x=element_text(color=ccolor),\n", " axis_ticks_major_y=element_blank(),\n", " panel_grid=element_blank(),\n", " panel_border=element_blank())\n", ")"]}, {"cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": []}], "metadata": {"kernelspec": {"display_name": "Python 3", "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.6.4"}}, "nbformat": 4, "nbformat_minor": 2}