{ "nbformat": 4, "nbformat_minor": 0, "metadata": { "colab": { "name": "Mastering the Bar Plot in Python.ipynb", "provenance": [], "collapsed_sections": [], "authorship_tag": "ABX9TyNo8bT6vocKUJ312iHq8hIV", "include_colab_link": true }, "kernelspec": { "name": "python3", "display_name": "Python 3" } }, "cells": [ { "cell_type": "markdown", "metadata": { "id": "view-in-github", "colab_type": "text" }, "source": [ "\"Open" ] }, { "cell_type": "markdown", "metadata": { "id": "ZhPi3vGYd5dN", "colab_type": "text" }, "source": [ "# **Mastering the Bar Plot in Python**\n", "\n", "## **In this tutorial, let us learn the “Bar Plot” visualization in-depth with the help of examples.**\n", "\n", "![alt text](https://miro.medium.com/max/1400/1*9tQ-etL6mo7OGOP0BEj2eA.jpeg)\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "IX3osv_TeCqI", "colab_type": "text" }, "source": [ "# **Introduction**\n", "\n", "The **data visualization** is one of the most important fundamental toolkits of a data scientist. A **good visualization** is very hard to produce. Often during a presentation, people don’t understand well enough the data, or the statistics involved but showing them a good visualization will help them understand the story we are trying to convey them. Therefore, they say **a picture is worth a thousand words**.\n", "\n", "\n", "\n", "> **I believe that visualization is one of the most powerful means of achieving personal goals**. — Harvey Mackay\n", "\n", "\n", "\n", "---\n", "\n", "\n", "\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "xMJYqLqxesnM", "colab_type": "text" }, "source": [ "# **Library**\n", "\n", "One of the best and the most commonly used library used for visualization is called **matplotlib**. This library produces publishable quality plots. Throughout the tutorial, we will use the **pyplot** module. If you are using a [jupyter notebook](https://jupyter.org/) then you can directly import the library otherwise, you can use the below command to install it manually:\n", "\n", "## **Installing the library**\n", "\n", "The current new version of matplotlib is **3.2.1**. You can refer to the official installation docs [here](https://pypi.org/project/matplotlib/).\n", "\n", "\n", "\n", "```\n", "pip install matplotlib\n", "```\n", "\n", "If you are using a [jupyter notebook](https://jupyter.org/) then you might want to add a “**!**” at the beginning of the command. This is just informing the kernel that the command is being entered.\n", "\n", "\n", "\n", "```\n", "!pip install matplotlib\n", "```\n", "\n", "---\n" ] }, { "cell_type": "markdown", "metadata": { "id": "bWXu3W8rieXw", "colab_type": "text" }, "source": [ "# **Bar Plot**\n", "\n", "A bar plot or bar graph is a plot/graph that represents the **value** of categorical data with rectangle bars. The rectangle bars can be horizontal or vertical. Categorical data here can be the name of the movies, countries, football players, etc. Correspondingly the values can be the count of the movies that won Oscar, GDP of a country, players who scored most goals, etc.\n", "\n", "---\n", "\n", "\n", "## **Syntax**\n", "\n", "Below is the general syntax of the bar plot:\n", "\n", "\n", "\n", "```\n", "bar(x, height, width, bottom, *, align)\n", "```\n", "\n", "---\n" ] }, { "cell_type": "markdown", "metadata": { "id": "NskjE17mjID7", "colab_type": "text" }, "source": [ "## **Parameters**\n", "\n", "* **x** = The ‘x’ coordinate of the bars.\n", "bottom = The ‘y’ coordinate of the bars. The default value is 0.\n", "\n", "* **height** = The ‘height’ of the bars.\n", "\n", "* **width** = The ‘width’ of the bars. The default value is 0.8.\n", "\n", "* **align** = The alignment of the bars based on the ‘x’ coordinate. The default value is “center” which centers the base on the ‘x’ position. Similarly, the alternate value is “edge” which align the left edges of the bar with respect to the ‘x’ coordinates.\n", "\n", "---\n", "\n", "\n", "\n", "## **Other Parameters**\n", "\n", "The ‘*’ represents alternative parameters, I will mention only the most used parameter such as:\n", "\n", "* **color** = The color of the bar plot. The values must be either ‘**r**’, ‘**g**’, ‘**b**’, and any combination of all three. Also, colors such as ‘**red**’, ‘**cyan**’, etc are also valid.\n", "\n", "* **orientation** = The orientation of the bars. The values are ‘**horizontal**’ and ‘**vertical**’, their working is pretty much self-explanatory.\n", "\n", "---" ] }, { "cell_type": "markdown", "metadata": { "id": "8Gjf4l1qj0bX", "colab_type": "text" }, "source": [ "## **Returns**\n", "\n", "The bar function returns all the **containers in the form of bars (horizontal or vertical)**.\n", "\n", "---" ] }, { "cell_type": "markdown", "metadata": { "id": "zFCGJjMDj76C", "colab_type": "text" }, "source": [ "# **Examples**\n", "\n", "\n", "Now, from here on I will explain the concepts via examples so that you will clearly understand its usage.\n", "\n", "## **Simple bar plot with no tricks involved (no special parameters)**\n", "\n", "Here to plot the bar plot, I will use the data from [worldometer](https://www.worldometers.info/coronavirus/), which is coronavirus total death counts from the **top 6 countries**. The data was taken on **8–6–20**, at **10:18 AM (CST)**." ] }, { "cell_type": "code", "metadata": { "id": "LHLH7pa7kK_3", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 265 }, "outputId": "73b40d3a-d203-47be-de8a-9c9b9df65629" }, "source": [ "# Importing the matplotlib library\n", "import matplotlib.pyplot as plt\n", "# Categorical data: Country names\n", "countries = ['USA', 'Brazil', 'Russia', 'Spain', 'UK', 'India']\n", "# Integer value interms of death counts\n", "totalDeaths = [112596, 37312, 5971, 27136, 40597, 7449]\n", "# Passing the parameters to the bar function, this is the main function which creates the bar plot\n", "plt.bar(countries, totalDeaths)\n", "# Displaying the bar plot\n", "plt.show()" ], "execution_count": 1, "outputs": [ { "output_type": "display_data", "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYkAAAD4CAYAAAAZ1BptAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+j8jraAAAUg0lEQVR4nO3dfbRddZ3f8fenZFB0ynOGMgnLZGqqC6kPkEKs045LLARwjG2VgZkl0TJmpkJ12pkqzqxVHJUpdlyijEgXlUhwHJFSR9IBzaQoq0MrD0GeQYY7PAyJIJFE6IiiwW//OL8bzrrcX0LuSe69Ce/XWnedvb/7t/f+7Zzc89mP56aqkCRpMn9vpjsgSZq9DAlJUpchIUnqMiQkSV2GhCSpa85Md2BnO/jgg2vBggUz3Q1J2q3cfPPN36+quRPre1xILFiwgHXr1s10NyRpt5Lkocnqnm6SJHUZEpKkLkNCktRlSEiSugwJSVKXISFJ6jIkJEldhoQkqcuQkCR17XFPXI9iwVlXzXQXnpcHzz1pprsg6QXCIwlJUpchIUnqMiQkSV2GhCSpy5CQJHUZEpKkLkNCktRlSEiSugwJSVKXISFJ6jIkJEldhoQkqcuQkCR1GRKSpC5DQpLUZUhIkroMCUlSlyEhSeoyJCRJXdsNiSQrkzyW5M6h2oFJ1ia5r70e0OpJcn6SsSS3JzlyaJ7lrf19SZYP1Y9Kckeb5/wk2dY6JEnT5/kcSVwCLJ1QOwu4pqoWAde0cYATgEXtZwVwIQw+8IGzgWOAo4Gzhz70LwTeMzTf0u2sQ5I0TbYbElX1v4FNE8rLgFVteBXwtqH6pTVwPbB/kkOB44G1VbWpqjYDa4Glbdq+VXV9VRVw6YRlTbYOSdI0meo1iUOq6pE2/ChwSBueBzw81G59q22rvn6S+rbW8RxJViRZl2Tdxo0bp7A5kqTJjHzhuh0B1E7oy5TXUVUXVdXiqlo8d+7cXdkVSXpBmWpIfK+dKqK9PtbqG4DDhtrNb7Vt1edPUt/WOiRJ02SqIbEaGL9DaTlw5VD9tHaX0xLgiXbKaA1wXJID2gXr44A1bdqTSZa0u5pOm7CsydYhSZomc7bXIMmXgDcCBydZz+AupXOBy5OcDjwEnNyaXw2cCIwBTwHvBqiqTUk+CtzU2n2kqsYvhr+XwR1U+wBfaz9sYx2SpGmy3ZCoqlM7k46dpG0BZ3SWsxJYOUl9HXDEJPXHJ1uHJGn6+MS1JKnLkJAkdRkSkqQuQ0KS1GVISJK6DAlJUpchIUnqMiQkSV2GhCSpy5CQJHUZEpKkLkNCktRlSEiSugwJSVKXISFJ6jIkJEldhoQkqcuQkCR1GRKSpC5DQpLUZUhIkroMCUlSlyEhSeoyJCRJXYaEJKnLkJAkdRkSkqQuQ0KS1DVSSCT590nuSnJnki8leXGShUluSDKW5MtJ9m5tX9TGx9r0BUPL+VCr35vk+KH60lYbS3LWKH2VJO24KYdEknnA+4DFVXUEsBdwCvBx4LyqejmwGTi9zXI6sLnVz2vtSHJ4m+9VwFLgs0n2SrIXcAFwAnA4cGprK0maJqOebpoD7JNkDvAS4BHgTcAVbfoq4G1teFkbp00/Nkla/bKqerqqHgDGgKPbz1hV3V9VPwEua20lSdNkyiFRVRuATwB/yyAcngBuBn5QVVtas/XAvDY8D3i4zbultT9ouD5hnl79OZKsSLIuybqNGzdOdZMkSROMcrrpAAZ79guBXwReyuB00bSrqouqanFVLZ47d+5MdEGS9kijnG56M/BAVW2sqp8CXwHeAOzfTj8BzAc2tOENwGEAbfp+wOPD9Qnz9OqSpGkySkj8LbAkyUvatYVjgbuBbwJvb22WA1e24dVtnDb9G1VVrX5Ku/tpIbAIuBG4CVjU7pbam8HF7dUj9FeStIPmbL/J5KrqhiRXAN8GtgC3ABcBVwGXJflYq13cZrkY+EKSMWATgw99ququJJczCJgtwBlV9QxAkjOBNQzunFpZVXdNtb+SpB035ZAAqKqzgbMnlO9ncGfSxLY/Bt7RWc45wDmT1K8Grh6lj5KkqfOJa0lSlyEhSeoyJCRJXYaEJKnLkJAkdRkSkqQuQ0KS1GVISJK6DAlJUpchIUnqMiQkSV2GhCSpy5CQJHUZEpKkLkNCktRlSEiSugwJSVKXISFJ6jIkJEldhoQkqcuQkCR1GRKSpC5DQpLUZUhIkroMCUlSlyEhSeoyJCRJXSOFRJL9k1yR5DtJ7kny+iQHJlmb5L72ekBrmyTnJxlLcnuSI4eWs7y1vy/J8qH6UUnuaPOcnySj9FeStGNGPZL4NPD1qnol8BrgHuAs4JqqWgRc08YBTgAWtZ8VwIUASQ4EzgaOAY4Gzh4PltbmPUPzLR2xv5KkHTDlkEiyH/DPgYsBquonVfUDYBmwqjVbBbytDS8DLq2B64H9kxwKHA+srapNVbUZWAssbdP2rarrq6qAS4eWJUmaBqMcSSwENgKfT3JLks8leSlwSFU90to8ChzShucBDw/Nv77VtlVfP0n9OZKsSLIuybqNGzeOsEmSpGGjhMQc4Ejgwqp6HfBDnj21BEA7AqgR1vG8VNVFVbW4qhbPnTt3V69Okl4wRgmJ9cD6qrqhjV/BIDS+104V0V4fa9M3AIcNzT+/1bZVnz9JXZI0TaYcElX1KPBwkle00rHA3cBqYPwOpeXAlW14NXBau8tpCfBEOy21BjguyQHtgvVxwJo27ckkS9pdTacNLUuSNA3mjDj/vwO+mGRv4H7g3QyC5/IkpwMPASe3tlcDJwJjwFOtLVW1KclHgZtau49U1aY2/F7gEmAf4GvtR5I0TUYKiaq6FVg8yaRjJ2lbwBmd5awEVk5SXwccMUofJUlT5xPXkqQuQ0KS1GVISJK6DAlJUpchIUnqMiQkSV2GhCSpy5CQJHUZEpKkLkNCktRlSEiSugwJSVKXISFJ6jIkJEldhoQkqcuQkCR1GRKSpC5DQpLUZUhIkroMCUlSlyEhSeoyJCRJXYaEJKnLkJAkdRkSkqQuQ0KS1GVISJK6DAlJUtfIIZFkryS3JPmLNr4wyQ1JxpJ8Ocnerf6iNj7Wpi8YWsaHWv3eJMcP1Ze22liSs0btqyRpx+yMI4n3A/cMjX8cOK+qXg5sBk5v9dOBza1+XmtHksOBU4BXAUuBz7bg2Qu4ADgBOBw4tbWVJE2TOaPMnGQ+cBJwDvAfkgR4E/Drrckq4MPAhcCyNgxwBfCZ1n4ZcFlVPQ08kGQMOLq1G6uq+9u6Lmtt7x6lz5J2rQVnXTXTXXheHjz3pJnuwm5h1COJTwEfAH7Wxg8CflBVW9r4emBeG54HPAzQpj/R2m+tT5inV3+OJCuSrEuybuPGjSNukiRp3JRDIslbgMeq6uad2J8pqaqLqmpxVS2eO3fuTHdHkvYYo5xuegPw1iQnAi8G9gU+DeyfZE47WpgPbGjtNwCHAeuTzAH2Ax4fqo8bnqdXlyRNgykfSVTVh6pqflUtYHDh+RtV9RvAN4G3t2bLgSvb8Oo2Tpv+jaqqVj+l3f20EFgE3AjcBCxqd0vt3daxeqr9lSTtuJEuXHd8ELgsyceAW4CLW/1i4AvtwvQmBh/6VNVdSS5ncEF6C3BGVT0DkORMYA2wF7Cyqu7aBf2VJHXslJCoqmuBa9vw/Tx7d9Jwmx8D7+jMfw6DO6Qm1q8Grt4ZfXyh8k4TSaPwiWtJUpchIUnqMiQkSV2GhCSpy5CQJHUZEpKkLkNCktRlSEiSugwJSVKXISFJ6jIkJEldhoQkqcuQkCR1GRKSpC5DQpLUZUhIkroMCUlSlyEhSeraFX/jWtLz5J+X1WznkYQkqcuQkCR1GRKSpC5DQpLUZUhIkroMCUlSlyEhSeoyJCRJXYaEJKlryiGR5LAk30xyd5K7kry/1Q9MsjbJfe31gFZPkvOTjCW5PcmRQ8ta3trfl2T5UP2oJHe0ec5PklE2VpK0Y0Y5ktgC/G5VHQ4sAc5IcjhwFnBNVS0CrmnjACcAi9rPCuBCGIQKcDZwDHA0cPZ4sLQ27xmab+kI/ZUk7aAph0RVPVJV327D/w+4B5gHLANWtWargLe14WXApTVwPbB/kkOB44G1VbWpqjYDa4Glbdq+VXV9VRVw6dCyJEnTYKdck0iyAHgdcANwSFU90iY9ChzShucBDw/Ntr7VtlVfP0l9svWvSLIuybqNGzeOtC2SpGeNHBJJfh74H8DvVNWTw9PaEUCNuo7tqaqLqmpxVS2eO3furl6dJL1gjBQSSX6OQUB8saq+0srfa6eKaK+PtfoG4LCh2ee32rbq8yepS5KmySh3NwW4GLinqj45NGk1MH6H0nLgyqH6ae0upyXAE+201BrguCQHtAvWxwFr2rQnkyxp6zptaFmSpGkwyh8degPwTuCOJLe22u8D5wKXJzkdeAg4uU27GjgRGAOeAt4NUFWbknwUuKm1+0hVbWrD7wUuAfYBvtZ+JEnTZMohUVXXAb3nFo6dpH0BZ3SWtRJYOUl9HXDEVPsoSRqNT1xLkroMCUlSlyEhSeoyJCRJXYaEJKnLkJAkdRkSkqQuQ0KS1GVISJK6DAlJUpchIUnqMiQkSV2GhCSpy5CQJHUZEpKkLkNCktRlSEiSukb586WStMdbcNZVM92F5+XBc0/aJcv1SEKS1GVISJK6PN2k3coL/dBfmm4eSUiSugwJSVKXISFJ6jIkJEldhoQkqcuQkCR1GRKSpK5ZHxJJlia5N8lYkrNmuj+S9EIyq0MiyV7ABcAJwOHAqUkOn9leSdILx6wOCeBoYKyq7q+qnwCXActmuE+S9IKRqprpPnQleTuwtKp+s42/Ezimqs6c0G4FsKKNvgK4d1o7um0HA9+f6U7sZHvaNrk9s9+etk2zcXteVlVzJxb3iO9uqqqLgItmuh+TSbKuqhbPdD92pj1tm9ye2W9P26bdaXtm++mmDcBhQ+PzW02SNA1me0jcBCxKsjDJ3sApwOoZ7pMkvWDM6tNNVbUlyZnAGmAvYGVV3TXD3dpRs/I02Ij2tG1ye2a/PW2bdpvtmdUXriVJM2u2n26SJM0gQ0KS1GVIjCDJgiR3Tqh9OMnvJVmS5IYktya5J8mHJ7T7VJINSWb0PUjyTOvjbUm+neSf7qTlfm786fgkDyY5eGcsdxvrG9+OO5P8zyT778Rlb92WmZDkD5LcleT2to3HTGEZb90dvtZmO79Tl7Rnp0hyYJJbkrx7Znr6XEn+bgfbvzHJX7ThWfv+zOoL17u5VcDJVXVb+3qRV4xPaMHwL4GHgV8BvjkzXQTgR1X12tav44H/3Pq0VZI5VbVlRxY6/gDkNBrejlXAGcA5O2PBM7AtWyV5PfAW4MiqerqF7d47upyqWs0ecmdgkv0Y3MxyUVV9fqb7szPM5vfHI4ld5xeARwCq6pmqunto2huBu4ALgVOnv2td+wKbYetezl8lWQ3c3WpfTXJz26td0WpvbXu3t7YvYnyg1a9NMlMPC30LmDexH0kOTvJgG35Vkhtbv29PsijJS5Nc1Y6q7kzya5Ms48Ik69q/wR9Ow7YcCny/qp4GqKrvV9V329HZf0lyR9uOl7f+/Wo7gr0lyf9KckirvyvJZ9rwJUnOT/J/k9w/vne+m/h54GvAn1XVhTPdmcm0351rk1yR5DtJvpgkbdrSVvs28K+G5hl+fyZ9D2eKIbHrnAfcm+TPk/xWkhcPTTsV+BLw58BJSX5uRno4sE/7oPwO8Dngo0PTjgTeX1X/qI3/m6o6ClgMvC/JQVW1uqpe2/bibwM+Ma29n6AdtR3L9vfKfhv4dOv3YmA9sBT4blW9pqqOAL4+yXx/0J6UfTXwK0levfN6P6m/BA5L8tdJPptk+Cjviar6x8BngE+12nXAkqp6HYPvOvtAZ7mHAr/M4Cjl3F3T9V3ik8B1VXXeTHdkO14H/A6DLyb9JeAN7TPgvwG/ChwF/IPOvM/3PZwWhsRoevcPV1V9hMGHz18Cv077wMngocATga9W1ZPADcDx09DXnh+1D/lXMviQvHR8rwe4saoeGGr7viS3AdczeBJ+0fiEJB9oy7pgujo+wT5JbgUeBQ4B1m6n/beA30/yQQbfWfMj4A7gXyT5eJJ/VlVPTDLfyW0v8BbgVQw+BHaZqvo7Bh8oK4CNwJeTvKtN/tLQ6+vb8HxgTZI7gP/Y+jiZr1bVz9oR7ozuqU7Q/Z1qr98AliX5hWnqz1TdWFXrq+pnwK3AAuCVwANVdV8Nnj340868z/c9nBaGxGgeBw6YUDuQ9sVdVfU37ZD4WOA1SQ5iEAj7A3e0Ux+/zCw55VRV32LwxWPjX/L1w/FpSd4IvBl4fVW9hsGH5IvbtDcD72Cwdz5Txq9JvAwIg2sSAFt49v/51qO5qvoz4K3Aj4Crk7ypqv6awdHTHcDHkvyn4RUkWQj8HnBsVb0auGp4mbtKO115bVWdDZwJ/OvxScPN2uufAJ9pRxi/tY3+PT00nE6bmbDN3ykGe9b/lcF79vens2M7aPjf9xl27Prv830Pp4UhMYK2l/dIkjfB4I4LBnvj1yU5aWiPfBGD/yg/YBAIv1lVC6pqAbCQwd7rS6Z9AyZI8koGT7Y/Psnk/YDNVfVUa7ekzfMyBn/z4x1tb3xGVdVTwPuA300yB3iQwZ44wNZz70l+Cbi/qs4HrgReneQXgaeq6k+BP2YQGMP2ZRCcT7TzxCfsym1p/XxFkkVDpdcCD7XhXxt6/VYb3o9nv99s+a7u3862rd+poTbnAdcAX2lH5ruL7wALkvzDNt7bOZxV76F3N43uNOCCJJ9s439YVX+T5BzgvCRPMdib/Q3gRQz+w2/d466qHya5jsF5yi9Pb9eBZ0/TwGCPcnlVPfNsvm31deC3k9zD4KvYr2/1dwEHAV9t83y3qk7c5b3ehqq6JcntDH4JPwFc3i60XzXU7GTgnUl+yuAU1R8B/wT44yQ/A34K/NsJy70tyS0MftkfBv7PLt+YwYXaP8nglt4twBiDU09vAQ5o2/k0z37gfBj470k2Mzg1s3Aa+riz9X6ntjaoqg8m+TzwhSSnttM6s1pV/Xj8/2H7XPgrYLKjoQ8zi95Dv5ZD2g21U5WLq2q2/U0C7WE83SRJ6vJIQpLU5ZGEJKnLkJAkdRkSkqQuQ0KS1GVISJK6/j8bPRAlAIlu/gAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "markdown", "metadata": { "id": "Pr3lLCetlTiu", "colab_type": "text" }, "source": [ "\n", "\n", "---\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "vW-quzRYlUC4", "colab_type": "text" }, "source": [ "## **Bar plot by enabling the special parameters**\n", "\n", "In the below plot, let us add some spices to the plot, spices in the sense of adding some more parameters and making the plot look better and more informative. Also, there are some attributes that we can use to make the bar plot more informative. Below are some things that I would add:\n", "\n", "* `figsize = (12,7)`: Helps in setting the **height** and **width** of the plot. But one twist is the order is interchanged which is (width, height) or (y, x).\n", "\n", "* `width= 0.9`: It helps in setting the width of the bars.\n", "color = ‘cyan’: It helps in setting the color of the bars.\n", "edgecolor = ‘red’: It helps in setting the edge color of the bars.\n", "* `annotate = (‘text’, (x, y))`: Helps for annotation the bars, include the text or the string along with the desired location as x and y coordinates.\n", "\n", "* `legend(labels = [‘Text’])`: It helps for setting up a label for the bar plot.\n", "\n", "* `title(‘Text’)`: Helps in providing a title for the bar plot\n", "\n", "* `xlabel(‘Text’), ylabel(‘Text’)`: Helps in providing the name for the x and y-axis of the plot.\n", "\n", "* `savefig(‘Path’)`: It helps in saving the plot to your local machine or anywhere. You can save in different formats such as “PNG”, “JPEG”, etc.\n", "\n", "\n", "\n", "> The ‘**Text**’ here can be replaced by the string of your choice, and the ‘**Path**’ represents the path where you want to store the plot.\n", "\n" ] }, { "cell_type": "code", "metadata": { "id": "WE_9cdRrqsio", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 458 }, "outputId": "009f7081-59e6-4b03-8324-009063888baa" }, "source": [ "# Importing the matplotlib library\n", "import matplotlib.pyplot as plt\n", "# Declaring the figure or the plot (y, x) or (width, height)\n", "plt.figure(figsize = (12,7))\n", "# Categorical data: Country names\n", "countries = ['USA', 'Brazil', 'Russia', 'Spain', 'UK', 'India']\n", "# Integer value interms of death counts\n", "totalDeaths = [112596, 37312, 5971, 27136, 40597, 7449]\n", "# Passing the parameters to the bar function, this is the main function which creates the bar plot\n", "plt.bar(countries, totalDeaths, width= 0.9, align='center',color='cyan', edgecolor = 'red')\n", "# This is the location for the annotated text\n", "i = 1.0\n", "j = 2000\n", "# Annotating the bar plot with the values (total death count)\n", "for i in range(len(countries)):\n", " plt.annotate(totalDeaths[i], (-0.1 + i, totalDeaths[i] + j))\n", "# Creating the legend of the bars in the plot\n", "plt.legend(labels = ['Total Deaths'])\n", "# Giving the tilte for the plot\n", "plt.title(\"Bar plot representing the total deaths by top 6 countries due to coronavirus\")\n", "# Namimg the x and y axis\n", "plt.xlabel('Countries')\n", "plt.ylabel('Deaths')\n", "# Saving the plot as a 'png'\n", "plt.savefig('1BarPlot.png')\n", "# Displaying the bar plot\n", "plt.show()" ], "execution_count": 2, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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ZWUlF154Iau/ZXbgwIHccccdANx5550sWbKEhQsX8o9//INu3bpx1FFHMWjQIM4++2xWrVrVJn2RJGljYChvO+uz7Q3mahbPP/8855xzDr/97W9rym688UaeffZZHn30UR599NGa4SqXXHIJDz/8MIMGDeLhhx+md+/edOjQgZUrV/Loo49yySWX8OSTT/Lqq69yzTXXtFGPJEmSWpfBXB9ZdXU1Rx55JNdddx077LBDTXnv3r0B2HLLLfnCF77AE088AUCvXr244447ePrpp/nBD34AQLdu3SgvL6eyspJPfvKTdOzYkSOOOIKnnnqq9TskSdJGaGlFBUQ022PpOm7OsHDhQiorK6msrORjH/sYvXv3rnm9fPnyNepedtllvP/+++vsw4EHHljnF0IeeOCB7Lzzzuy+++7069ePM844g0WLFjVl8zTYni5duqz3sprCYK6PZNGiRRx66KH86Ec/Yt99960pX7lyJQsWLACyq8LvvvtuBgwYAMCCBQv48MMPAbjooos46aSTANhzzz1ZtGgR8+fPB2Dy5MnsuuuurdkdSZI2WmWzZxMpNdujbHa9X2AJQPfu3Zk2bRrTpk3j9NNP56yzzqp53alTpzXqNjaYN+TGG29k+vTpTJ8+nc6dOzN69Oj1XlZztGd9GMy1lrFjx7LPPvvw0ksvUV5ezlVXXcWdd95JeXk5f//73zn00EMZOXIkAL/4xS+YOXMm3/ve92r+Cn7rrbdYtmwZI0eOZPfdd6eyspLevXvz5S9/GYC//OUv7Lzzzuy00068+eabnHfeeQB06NCBSy65hOHDh7PbbruRUqqZR5IkbfgefPBBBg0axG677cZJJ53EsmXLuOKKK/jnP//JsGHDGDZsGABf+cpXqKqqon///px//vlNWkenTp24+OKLef3113nmmWcAuOGGG9hrr72orKzktNNOq7mGra711NUegPPOO4+BAwey99578+abbwLZ7aQHDBjAwIEDGTp06EfePqSUfKTEHnvskSRJkjYWM2bMWLMAmjU8JWh0W84///x04YUXpvLy8vTSSy+llFL60pe+lC699NKUUkp9+/ZN8+fPr6m/cOHClFJKK1euTAcccEB65plnUkopHXDAAenJJ59ca/l1lY8ePTqNHz8+zZgxIx122GFp+fLlKaWUvvKVr6Rrr722wfXUbg+QJk6cmFJK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s5g+fToHHXQQ48aNA2DEiBEccsghfPrTn2bs2LHss88+dOjQYY15b7rpJsaOHdvsfZCai8FckiS1mb/97W9MnDiRiooKxowZw+TJk/n617/OokWLWLlyJZANdenduzcA3bt3p3PnzgCccsopTJ06tWZZ5513HtOmTWPSpEmklNhpp51qpi1YsIAnnniCQw89tBV7JzWNwVySJLWZiy66iOrqambNmsX48eP5zGc+w4033siwYcO47bbbALj22msZPXo0APPmzauZd+LEiTUXjK5atYqFCxcCMH36dKZPn86IESNq6t52220cdthhlJWVtVbXpCbr2NYNkCRJqu3HP/4xY8aM4bvf/S6DBg3i5JNPBuCKK65g4sSJdOzYkW222YZrrrkGgBUrVrD//vsD0LVrV2644YaaMeoA48eP59xzz231fkhNESmltm5DIVRVVaUpU6a0/oojCPdBq0oR4DaXJEltICKmppSq6prmUBZJkiSpAAzm0gZk6dKl7LXXXgwcOJD+/ftz/vnnA/V/q92ECRPYfffdqayspKqqir/+9a81yxo1ahTdunWr+Za91Y477jh23nlnBgwYwEknncSKFStar4OSJLVjBnNpA9K5c2cmT57MM888w7Rp07jvvvt47LHH6v1Wu+HDh9fUvfrqq2u+vAPg7LPP5vrrr19rHccddxwvvvgizz77LB988MEaX3ctSZJaTpsF84joEBFPR8Td+evtI+LxiJgZETdHRKe8vHP+emY+vaJkGd/Oy1+KiJEl5aPyspkR4ZUe2mhEBF26dAGyC51WrFhBRNRMr/2tdl26dKmZ/t57761Rd/jw4Wy55ZZrreOQQw4hIogI9tprL6qrq1uyS5IkKdeWZ8y/DrxQ8vrHwKUppU8B7wAn5+UnA+/k5Zfm9YiIXYExQH9gFPCrPOx3AH4JHAzsCozN60obhVWrVlFZWUnPnj056KCDGDJkSM20ur7V7s4776Rfv34ceuihXH311Y1ez4oVK7j++usZNWpUs7ZfUttZWlEBET5a8bG0oqKtd7s2IG0SzCOiHDgUuDJ/HcBngNvyKtcCR+TPR+evyacPz+uPBsanlJallF4DZgJ75Y+ZKaVXU0rLgfF5XWmj0KFDB6ZNm0Z1dTVPPPEEzz33XM20ur7V7sgjj+TFF1/krrvu4r//+78bvZ6vfvWrDB06tOb2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vpyJEydy0UUX8f777/PDH/6QBx54YK16Z555Jj/+8Y/ZZJM1z/uOGDGCJ598kk9/+tP06NGDffbZhw4dOrRW8zconjGXpGZUUVHBbrvtRmVlJVVVVQA888wz7LPPPuy2224cfvjhLF68GIAbb7xxjQurNtlkk5rxnOeddx59+vShS5cubdYXSQK49957GTx4MNtttx2vvPIKr732GgMHDqSiooLq6moGDx7MG2+8wZQpUxgzZgwVFRXcdtttfPWrX+Wuu+4Css+0adOmMWnSJFJK7LTTTm3cq2KKlFJbt6EQqqqq0pQpU1p/xRGE+6BVpQhozDZ337S6Ru+bAquoqGDKlClsu+22NWV77rknl1xyCQcccABXX301r732GhdeeOEa8z377LMcccQRvPLKKwA89thj9O3blx133JF33323VfvwkXnstDo/14prY/hcGzNmDCNHjuTEE09ca1pdn3kAJ5xwAocddhhHH300q1atYtGiRXTv3p3p06fzhS98gWnTptGxY/scuBERU1NKVXVNa59bRJJa0T/+8Q+GDh0KwEEHHcTIkSPXCuY33XQTY8aMqXm99957t2obJaku7733HpMmTeK3v/3tei9jxYoV7L///gB07dqVG264od2G8nVxq0hSM4oIRowYQURw2mmnceqpp9K/f38mTJjAEUccwa233lrnRU8333wzEyZMaIMWS1L9tthiCxYuXFjv9FmzZtVZfs0119Q8LysrY8aMGc3cso2TY8wlqRn99a9/5amnnuLee+/ll7/8JY888ghXX301v/rVr9hjjz1YsmQJnTp1WmOexx9/nM0335wBAwa0UaslSUVgMJekZtS7d28AevbsyZFHHskTTzxBv379eOCBB5g6dSpjx45lhx12WGOe0tuQSZLaL4O5JDWT9957jyVLltQ8f+CBBxgwYABvvfUWAB9++CHf//73Of3002vm+fDDD7nlllvWGF8uSWqfDOaS1EzefPNN9ttvPwYOHMhee+3FoYceyqhRo7jpppvYaaed6NevH7169VrjzgaPPPIIffr04ZOf/OQay/rWt75FeXk577//PuXl5VxwwQWt3BtJUmvzdok5b5fYfnhbseLaGG4rJjx22oCfa8Xl55pq83aJkiRJBba0ooKy2bPbuhntytK+fSmr564ybcVgLkmS1MbKZs/2vxmtLEW0dRPW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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "markdown", "metadata": { "id": "eaLg9aUaqvsY", "colab_type": "text" }, "source": [ "\n", "\n", "---\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "CIelf4W7qwQQ", "colab_type": "text" }, "source": [ "## **Horizontal bar plot**\n", "\n", "Yes, you read it right. By adding one extra character ‘**h**’, we can align the bars horizontally. Also, we can represent the bars in two or more different colors, this will increase the readability of the plots. Show below is the code with the modifications." ] }, { "cell_type": "code", "metadata": { "id": "PziAQPqCq2Ym", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 637 }, "outputId": "0831c5d3-6ff7-4024-b64f-37226b5d6ae5" }, "source": [ "# Importing the matplotlib library\n", "import matplotlib.pyplot as plt\n", "# Declaring the figure or the plot (y, x) or (width, height)\n", "plt.figure(figsize=[14, 10])\n", "# Passing the parameters to the bar function, this is the main function which creates the bar plot\n", "# For creating the horizontal make sure that you append 'h' to the bar function name\n", "plt.barh(['USA', 'Brazil', 'Russia', 'Spain', 'UK'], [2026493, 710887, 476658, 288797, 287399], label = \"Danger zone\", color = 'r')\n", "plt.barh(['India', 'Italy', 'Peru', 'Germany', 'Iran'], [265928, 235278, 199696, 186205, 173832], label = \"Not safe zone\", color = 'g')\n", "# Creating the legend of the bars in the plot\n", "plt.legend()\n", "# Namimg the x and y axis\n", "plt.xlabel('Total cases')\n", "plt.ylabel('Countries')\n", "# Giving the tilte for the plot\n", "plt.title('Top ten countries most affected by\\n coronavirus')\n", "# Saving the plot as a 'png'\n", "plt.savefig('2BarPlot.png')\n", "# Displaying the bar plot\n", "plt.show()" ], "execution_count": 3, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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vTWvfvWrc9ddd+Xkk09eubWMw4MPPpipUydufDHjBQAAjGnTTTfNmWeemdNPPz2ttSxYsCB77rlndtlll+yyyy759re/nSS56KKLsvfee+fAAw/Mtttum0MOOSStC3lf+tKXsu2222bWrFk55phjsv/++ydJ7r333rz+9a/Pbrvtlp133jlf+MIXkiRnnXVWDjjggOy77755/vOf/7B6zjjjjMycOTMzZ87MVlttlX322SdJcvbZZ2fHHXfMDjvskOOPP35J//XXXz8nnHBCZsyYkT322CO/+MUvkiQLFy7MK17xiuy6667Zddddc8kll/Ry/QQvAABgXLbeeussWrQot956azbddNNccMEFufLKK3POOefkmGOOWdLvqquuyqmnnprrrrsuN9xwQy655JLcf//9OfLII/PlL3858+bNy8KFC5f0f/e735199903l19+eb7+9a/nuOOOy7333pskufLKK/O5z30uF1988cNqOeqoozJ//vxcccUV2WKLLfKXf/mXueWWW3L88cfna1/72pJ95513XpJBuNtjjz1y9dVX53nPe14+9KEPJUne/OY359hjj80VV1yRz3/+8zn88MN7uXYTd64OAAAYmgceeCBHH3105s+fnylTpuQHP/jBkn277bZbtthiiyTJzJkzs2DBgqy//vrZeuutlzyC/eCDD86ZZ56ZJPnqV7+a888/P6ecckqSwRMdf/KTnyRJXvjCF+bxj3/8Mut485vfnH333TcveclL8oUvfCF77713NtlkkyTJIYcckm984xt52ctelnXWWWfJDNusWbNywQUXJEkuvPDCXHfddUvGu+uuu3LPPfdk/fXXXynXaTHBCwAAGJcbbrghU6ZMyaabbpqTTz45m222Wa6++uo89NBDmTZt2pJ+66677pLtKVOm5MEHH1zuuK21fP7zn88222zzsPbLLrss66233jKPO+uss3LjjTfm9NNPH7P2tddee8nTCEfW9NBDD+U73/nOw+rvg6WGAADAmBYuXJijjjoqRx99dKoqd955ZzbffPOstdZa+cQnPpFFixYt9/htttkmN9xwQxYsWJAkOeecc5bs22+//TJnzpwl94JdddVVY9Yzb968nHLKKfnkJz+ZtdYaxJrddtstF198cW677bYsWrQoZ599dvbaa6/ljvOiF70oc+bMWfJ68cNEVjbBCwAAGNV999235HHyL3jBC/KiF70oJ554YpLkDW94Qz7+8Y9nxowZ+f73v7/cmalk8ITED37wg3nxi1+cWbNmZYMNNshGG22UJHnnO9+ZBx54IDvttFO23377vPOd7xyzttNPPz133HFH9tlnn8ycOTOHH354Nt9887znPe/JPvvskxkzZmTWrFl56UtfutxxTjvttMydOzc77bRTtttuu5xxxhnjvDorpto4HiNJMnv27DZ37txhlwEAwBri+uuvzzOf+cxhl7FSLb53qrWWN77xjXn605+eY489dthl/V5G+/1U1bzW2uzR+pvxAgAAVokPfehDS2bQ7rzzzhx55JHDLmmV8XANAABglTj22GMn7AzXo2XGCwAAoGeCFwAAQM8ELwAAgJ4JXgAAAD0TvAAAgFFVVd761rcueX3KKafkpJNOWu4x5513Xq677rqV8v7HHXdctt9++xx33HErZbxh8lTDcZp3y7zUyTXsMoamnej73gAAhmll/y06nr/v1l133Zx77rl5xzvekY033nhc45533nnZf//9s9122z3aEnPmmWfmjjvuyJQpUx71WMNmxgsAABjV1KlTc8QRR+T973//I/YtWLAg++67b3baaac8//nPz09+8pN8+9vfzvnnn5/jjjsuM2fOzI9+9KOHHfPZz342O+ywQ2bMmJHnPe95S8bZc889s8suu2SXXXbJt7/97STJAQcckHvuuSezZs3KOeeck4ULF+YVr3hFdt111+y666655JJLHlHT4YcfnpkzZ2bmzJnZZJNNcvLJJ6e1luOOOy477LBDdtxxx5xzzjlJkosuuih77713DjzwwGy77bY55JBD0togjM6bNy977bVXZs2alf322y8/+9nPHv21fNQjAAAAk9Yb3/jG7LTTTnnb2972sPY3velNOfTQQ3PooYfmox/9aI455picd955OeCAA7L//vvnwAMPfMRY73rXu/KVr3wlT3rSk/KrX/0qSbLpppvmggsuyLRp0/LDH/4wBx98cObOnZvzzz8/66+/fubPn58kefWrX51jjz02z33uc/OTn/wk++23X66//vqHjf/hD384SXLjjTfmxS9+cQ477LCce+65mT9/fq6++urcdttt2XXXXZeEvquuuirXXnttpk+fnuc85zm55JJLsvvuu+dNb3pTvvCFL2STTTbJOeeckxNOOCEf/ehHH9V1FLwAAIBl2nDDDfPa1742p512Wh7zmMcsab/00ktz7rnnJkle85rXPCKYjeY5z3lODjvssBx00EF5+ctfniR54IEHcvTRR2f+/PmZMmVKfvCDH4x67IUXXviwe8fuuuuu3HPPPVl//fUf1u/+++/PK1/5ysyZMydPfepTc+qpp+bggw/OlClTstlmm2WvvfbKFVdckQ033DC77bZbtthiiyTJzJkzs2DBgjz2sY/N9773vbzwhS9MkixatCibb775Clyx0QleAADAcr3lLW/JLrvskte97nWPapwzzjgjl112Wb74xS9m1qxZmTdvXubMmZPNNtssV199dR566KFMmzZt1GMfeuihfOc731nm/sWOOuqovPzlL88LXvCCMetZd911l2xPmTIlDz74YFpr2X777XPppZeu2MmNwT1eAADAcj3+8Y/PQQcdlI985CNL2p797Gfn05/+dJLkU5/6VPbcc88kyQYbbJC777571HF+9KMfZffdd8+73vWubLLJJrnpppty5513ZvPNN89aa62VT3ziE1m0aNGox77oRS/KnDlzlrxevARxpA984AO5++678/a3v31J25577plzzjknixYtysKFC/ONb3wju+222zLPdZtttsnChQuXBK8HHngg11577TL7j5fgBQAAjOmtb31rbrvttiWv58yZk4997GPZaaed8olPfCL/9E//lCR51atelfe+973ZeeedH/FwjeOOOy477rhjdthhhzz72c/OjBkz8oY3vCEf//jHM2PGjHz/+9/PeuutN+r7n3baaZk7d2522mmnbLfddjnjjDMe0eeUU07JNddcs+QBG2eccUb+5E/+JDvttFNmzJiRfffdN//4j/+YJz7xics8z3XWWSef+9zncvzxx2fGjBmZOXPmkgd+PBq1+MkdLF9Nr5Yjh13F8HicPADAqnX99dfnmc985rDLYBlG+/1U1bzW2uzR+pvxAgAA6JngBQAA0DPBCwAAoGeCFwAArKY8j2H19Pv8XgQvAABYDU2bNi2333678LWaaa3l9ttvH/P7xJbmC5QBAGA1tMUWW+Tmm2/OwoULh10KS5k2bVq22GKLFTpG8AIAgNXQ2muvna222mrYZbCSWGoIAADQs0kRvKrqnmHXAAAAsCyTIniNpqosowQAAFYLkyp4VdXeVfXNqjo/yXVd23lVNa+qrq2q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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "markdown", "metadata": { "id": "smSLahABq4D9", "colab_type": "text" }, "source": [ "\n", "\n", "---\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "I6nRdc23q4m3", "colab_type": "text" }, "source": [ "## **Stacking two bar plots on top of each other**\n", "\n", "At times you might want to stack two or more bar plots on top of each other. With the help of this, you can differentiate two separate quantities visually. To do this just follow." ] }, { "cell_type": "code", "metadata": { "id": "ovWa97d2q-2h", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 350 }, "outputId": "2fb1ced7-2c36-4446-b4d2-1d683dcfc75b" }, "source": [ "# Importing the matplotlib library\n", "import matplotlib.pyplot as plt\n", "# Declaring the figure or the plot (y, x) or (width, height)\n", "plt.figure(figsize=[15, 5])\n", "# Categorical data: Country names\n", "countries = ['USA', 'Brazil', 'Russia', 'Spain', 'UK', 'India']\n", "# Integer value interms of death counts\n", "totalCases = (2026493, 710887, 476658, 288797, 287399, 265928)\n", "# Integer value interms of total cases\n", "totalDeaths = (113055, 37312, 5971, 27136, 40597, 7473)\n", "# Plotting both the total death and the total cases in a single plot. Formula total cases - total deaths\n", "for i in range(len(countries)):\n", " plt.bar(countries[i], totalDeaths[i], bottom = totalCases[i] - totalDeaths[i], color='black')\n", " plt.bar(countries[i], totalCases[i] - totalDeaths[i], color='red')\n", "# Creating the legend of the bars in the plot\n", "plt.legend(labels = ['Total Deaths','Total Cases'])\n", "# Giving the tilte for the plot\n", "plt.title(\"Bar plot representing the total deaths and total cases country wise\")\n", "# Namimg the x and y axis\n", "plt.xlabel('Countries')\n", "plt.ylabel('Cases')\n", "# Saving the plot as a 'png'\n", "plt.savefig('3BarPlot.png')\n", "# Displaying the bar plot\n", "plt.show()" ], "execution_count": 4, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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yWtgyfC0ndrJ36Lp7aMdNrQ1zZ3NJGmN0w5JfWk7HG0Tmp6uMyc6Lknj4q3AxSZ90pqrc4lfktNphiQ8L82PLR8GvAE4LM2Pm15OM+wAmmEhC9P8WO25wPvaIRmStCYKzVCzO2mGel5JM2RQ0mosyfU0v6P5ngkORdIE6uRQT0mSJEnSYzrX4ydJkiRJWpqJnyRJkiR13OSJDmA8bbTRRrXFFltMdBiSJEmSNCHmzJlze1VNG1reqcRviy22YPbs2RMdhiRJkiRNiCS/G67coZ6SJEmS1HEmfpIkSZLUcSZ+kiRJktRxnbrGT5IkSVL/PfLIIyxYsICHHnpookNZY02dOpVNN92UtdZaa1T1TfwkSZIkjcmCBQtYb7312GKLLUgy0eGscaqKhQsXsmDBArbccstRzeNQT0mSJElj8tBDD7Hhhhua9E2QJGy44YZj6nE18ZMkSZI0ZiZ9E2us29/ET5IkSdJqZeHChcyYMYMZM2bwrGc9i0022WTJ6z/84Q9L1T3hhBN44IEHltvm3nvvPexvgu+9994873nPY8cdd2SbbbbhiCOO4K677lrh2IfGs+66665wW2Nh4idJkiTpCUkyro/l2XDDDZk7dy5z587l8MMP513veteS12uvvfZSdUeb+C3Ll7/8ZebNm8e8efOYMmUKBx100Aq3NR7xrAgTP0mSJEmrvXPOOYeZM2eyww478KY3vYmHH36YE088kd///vfss88+7LPPPgC89a1vZWBggO23356jjjpqTMtYe+21+fjHP84NN9zAJZdcAsCXvvQldt11V2bMmMFb3vIWFi9ePOJyhosH4IMf/CA77bQTu+22G7fccgsAX//613n+85/PTjvtxJ577vmEt4+JnyRJkqTV2kMPPcShhx7K1772NS699FIWLVrEySefzNvf/nY23nhjzj33XM4991wAjj32WGbPns28efM4//zzmTdv3piWNWnSJHbaaSeuuuoqrrzySr72ta9x4YUXMnfuXCZNmsSXv/zlEZczXDz3338/u+22G5dccgl77rknp556KgDHHHMMZ599NpdccglnnXXWE95GfUv8kmyW5NwkVyS5PMk7hqmTJCcmmZ9kXpKde6YdkuS37eOQfsW5Mox317eP8X9IkiRp9bV48WK23HJLtt56awAOOeQQLrjggmHrnnHGGey8887MnDmTyy+/nCuuuGLMy6sqoOllnDNnDrvssgszZszgnHPO4dprrx3TctZee21e/vKXA/CCF7yA66+/HoDdd9+dQw89lFNPPXVJL+IT0c/f8VsEvKeqfpVkPWBOkh9WVe8avwTYqn28EDgZeGGSpwNHAQNAtfOeVVV39jFeSZIkSR123XXXcdxxx3HxxRezwQYbcOihh475R+gXL17MpZdeyrbbbsutt97KIYccwkc/+tEVXs5aa621pCNi0qRJLFq0CIBTTjmFX/ziF3znO9/hBS94AXPmzGHDDTdcgbVu9K3Hr6purqpftc/vBa4ENhlS7SDgC9W4CHhakmcDBwA/rKo72mTvh8CB/YpVkiRJ0upr0qRJXH/99cyfPx+AL37xi+y1114ArLfeetx7770A3HPPPayzzjqsv/763HLLLXzve98b03IeeeQRPvCBD7DZZpux4447su+++/KNb3yDW2+9FYA77riD3/3ud8tcTm88y3LNNdfwwhe+kGOOOYZp06Zx4403jinWofrZ47dEki2AmcAvhkzaBOhdgwVt2Ujlw7U9C5gFMH369HGJV5IkSdLqY+rUqXz2s5/lNa95DYsWLWKXXXbh8MMPB2DWrFkceOCBS66tmzlzJttssw2bbbYZu++++6jaf8Mb3sCUKVN4+OGH2W+//fif//kfALbbbjs+8pGPsP/++/Poo4+y1lprcdJJJ7HbbruNuJyh8Yzkfe97H7/97W+pKvbdd1922mmnJ7CFIIPjU/slybrA+cCxVfXNIdO+DXysqn7avj4HeD+wNzC1qj7Sln8IeLCqjlvWsgYGBmq4396YaF5Dturr93kgSZLUJVdeeSXbbrvtRIexxhtuPySZU1UDQ+v29a6eSdYC/hv48tCkr3UTsFnP603bspHKJUmSJElj1M+7egb4L+DKqvrECNXOAv46jd2Au6vqZuBsYP8kGyTZANi/LZMkSZIkjVE/r/HbHfgr4NIkc9uyfwCmA1TVKcB3gZcC84EHgL9pp92R5MPAxe18x1TVHX2MVZIkSZI6q2+JX3vd3jIvbqvmwqq3jTDtNOC0PoQmSZIkSWuUvl7jJ0mSJEmaeCZ+kiRJktRxJn6SJEmSVisLFy5kxowZzJgxg2c961lssskmS17/4Q9/WKruCSecwAMPPLDcNvfee2+G+2m4Rx55hCOPPJKtttqKnXfemRe96EVj/uH3VcFK+QF3SZIkSR023r9bvZzfWN5www2ZO7e5f+TRRx/Nuuuuy3vf+95h655wwgm88Y1v5ClPecoKhfKhD32Im2++mcsuu4wpU6Zwyy23cP75569QWxPJHj9JkiRJq71zzjmHmTNnssMOO/CmN72Jhx9+mBNPPJHf//737LPPPuyzzz4AvPWtb2VgYIDtt9+eo446apltPvDAA5x66ql88pOfZMqUKQA885nP5LWvfe0y2zryyCPZbrvt2HHHHZckpLfddhuvetWr2GWXXdhll1248MILATj//POX9FbOnDmTe++9d9y3Ddjjt1Is+/sKSZIkSU/EQw89xKGHHso555zD1ltvzV//9V9z8skn8853vpNPfOITnHvuuWy00UYAHHvssTz96U9n8eLF7LvvvsybN48dd9xx2Hbnz5/P9OnTeepTnzrs9OHa2mSTTTjzzDO56qqrSMJdd90FwDve8Q7e9a53sccee3DDDTdwwAEHcOWVV3Lcccdx0kknsfvuu3PfffcxderUvmwje/wkSZIkrdYWL17MlltuydZbbw3AIYccwgUXXDBs3TPOOIOdd96ZmTNncvnll3PFFVes8HKHa2v99ddn6tSpHHbYYXzzm99cMsT0Rz/6EUcccQQzZszgla98Jffccw/33Xcfu+++O+9+97s58cQTueuuu5g8uT99cyZ+kiRJktYI1113HccddxznnHMO8+bN42UvexkPPfTQiPWf+9zncsMNN3DPPfeMuq3Jkyfzy1/+kle/+tV8+9vf5sADDwTg0Ucf5aKLLmLu3LnMnTuXm266iXXXXZcjjzySz3zmMzz44IPsvvvuXHXVVX1ZdxM/SZIkSau1SZMmcf311zN//nwAvvjFL7LXXnsBsN566y25bu6ee+5hnXXWYf311+eWW25Z7t05n/KUp3DYYYfxjne8Y8ndQm+77Ta+/vWvj9jWfffdx913381LX/pSjj/+eC655BIA9t9/fz75yU8uaXvw5jTXXHMNO+ywA+9///vZZZdd+pb4eY2fJEmSpNXa1KlT+exnP8trXvMaFi1axC677MLhhx8OwKxZszjwwAPZeOONOffcc5k5cybbbLMNm222Gbvvvvty2/7IRz7CP/7jP7LddtsxdepU1llnHY455hh22mmnYdu69957Oeigg3jooYeoKj7xiU8AcOKJJ/K2t72N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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "markdown", "metadata": { "id": "y_jnIQiprFTh", "colab_type": "text" }, "source": [ "\n", "In the above plot, we can see two different variations of the data being plotted which are the total deaths and the total cases.\n", "\n", "---\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "F5YrKKvwrJsm", "colab_type": "text" }, "source": [ "## **Plotting two or bar plot next to another (Grouping)**\n", "\n", "Often many-a-times you might want to group two or more plots just to represent two or more different quantities or whatever. Also in the below code, you can learn to **override** the name of the x-axis with the name of your choice.\n", "\n" ] }, { "cell_type": "code", "metadata": { "id": "g0CMmxmprORL", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 621 }, "outputId": "0b82b062-808a-4ef9-f968-6cc9ef8bdaf9" }, "source": [ "# Importing the matplotlib library\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "# Declaring the figure or the plot (y, x) or (width, height)\n", "plt.figure(figsize=[15, 10])\n", "# Data to be plotted\n", "totalDeath = [113055, 37312, 5971, 7473, 33964]\n", "totalRecovery = [773480, 325602, 230688, 129095, 166584]\n", "activeCases = [1139958, 347973, 239999, 129360, 34730]\n", "# Using numpy to group 3 different data with bars\n", "X = np.arange(len(totalDeath))\n", "# Passing the parameters to the bar function, this is the main function which creates the bar plot\n", "# Using X now to align the bars side by side\n", "plt.bar(X, totalDeath, color = 'black', width = 0.25)\n", "plt.bar(X + 0.25, totalRecovery, color = 'g', width = 0.25)\n", "plt.bar(X + 0.5, activeCases, color = 'b', width = 0.25)\n", "# Creating the legend of the bars in the plot\n", "plt.legend(['Total Deaths', 'Total Recovery', 'Active Cases'])\n", "# Overiding the x axis with the country names\n", "plt.xticks([i + 0.25 for i in range(5)], ['USA', 'Brazil', 'Russia', 'India', 'Italy'])\n", "# Giving the tilte for the plot\n", "plt.title(\"Bar plot representing the total deaths, total recovered cases and active cases country wise\")\n", "# Namimg the x and y axis\n", "plt.xlabel('Countries')\n", "plt.ylabel('Cases')\n", "# Saving the plot as a 'png'\n", "plt.savefig('4BarPlot.png')\n", "# Displaying the bar plot\n", "plt.show()" ], "execution_count": 5, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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XOE0d9111yxatGjc7k9+8pOz3Xbb5SlPeUre9KY35ZZbbpn8yhljbD2PfvSjV3pa00XAAwAAHjRz5szJ4sWLs3jx4hx44IF529vedu/7tdZa6z7DTjbgLc/xxx+fiy66KBdddFHWXnvt7LHHHis9rVVRz3QT8AAAgBn1ta99LQsWLMi2226b1772tfn1r3+dI488Mtdee21222237LbbbkmS17/+9Vm4cGG23nrrHHzwwVOax1prrZV/+Id/yE9/+tNceOGFSZLPfvazeepTn5r58+fngAMOyLJlyyacz3j1JMm73/3ubL/99tl5551z3XXXJUm+8IUvZJtttsn222+fZz7zmQ94/UyFgAcAAMyYu+66K/vuu29OPPHEfO9738vSpUvz8Y9/PG95y1uy8cYb5+yzz87ZZ5+dJHnf+96XRYsW5aKLLso3vvGNXHTRRVOa16xZs7L99tvnsssuy6WXXpoTTzwx3/zmN7N48eLMmjUrxx9//ITzGa+eO+64IzvvvHMuvPDCPPOZz8wxxxyTJDn00ENz+umn58ILL8wpp5yyCtfWigl4AADAjFm2bFnmzZuXLbbYIkny6le/Ouecc864w5500knZYYcdsmDBglx88cW55JJLpjy/1lqS7qrh+eefn5122inz58/P1772tVx55ZVTms9aa62VF7/4xUmSHXfcMUuWLEmS7LLLLtl3331zzDHH3HtV8MHih84BAICHvB//+Mc5/PDD853vfCcbbLBB9t133yn/RtyyZcvyve99L1tuuWWuv/76vPrVr8773//+lZ7Pmmuuee+DZWbNmpWlS5cmSY466qicd955OfXUU7Pjjjvm/PPPz5w5c1ZiqafOFTwAAGDGzJo1K0uWLMkVV1yRJPnMZz6TZz3rWUmSddddN7fddluS5Je//GXWWWedrLfeernuuuvyla98ZUrz+c1vfpN3vetd2WyzzbLddtvlOc95Tk4++eRcf/31SZKbb745P/nJT5Y7n9F6ludHP/pRnva0p+XQQw/N3Llzc9VVV02p1gfCFTwAAFiN3dNkcabMnj07xx57bPbcc88sXbo0O+20Uw488MAkyf7775/dd9/93nvfFixYkKc85SnZbLPNsssuu0xq+vvss0/WXnvt/PrXv85zn/vcfPnLX06SbLXVVjnssMPy/Oc/P3fffXfWXHPNfOxjH8vOO+884XzG1jORgw46KJdffnlaa3nOc56T7bff/gGsoampmd6gU7Vw4cI23m9cAAAAK3bppZdmyy23nOkymKTxtldVnd9aWzje8JpoAgAADISABwAAMBACHgAAwEAIeAAAAAMh4AEAAAyEgAcAADAQfgcPAABWY/WeWqXTawcv/2fYbrrppjznOc9Jkvz85z/PrFmzMnfu3CTJt7/97ay11lr3DnvEEUdk//33z6Me9ajlTnPXXXfN4YcfnoULF96v+89+9rPMnj07a621Vo455pjMnz9/ZRbrYcMVPB4Sqh7afwAArBpz5szJ4sWLs3jx4hx44IF529vedu/70XCXdAHvzjvvfEDzO/7443PhhRfmDW94Qw466KAHNK1VadmyZdMyXQEPAACYUV/72teyYMGCbLvttnnta1+bX//61znyyCNz7bXXZrfddstuu+2WJHn961+fhQsXZuutt87BBx88pXk8/elPzzXXXJMkueOOO/La1742T33qU7NgwYJ8+ctfTtKFrne84x3ZZpttst122+UjH/nIhPV99atfzZ577nnv9L/+9a/nxS9+cZLkjDPOyNOf/vTssMMO2XPPPXP77bcnSTbffPP89V//dXbYYYd84AMfyA477HDv+Jdffvl93q8sAQ8AAJgxd911V/bdd9+ceOKJ+d73vpelS5fm4x//eN7ylrdk4403ztlnn52zzz47SfK+970vixYtykUXXZRvfOMbueiiiyY9n69+9at56Utfeu90nv3sZ+fb3/52zj777Bx00EG54447cvTRR2fJkiVZvHhxLrroouyzzz4T1vfc5z435513Xu64444kyYknnpi99947N954Yw477LCceeaZueCCC7Jw4cJ86EMfureOOXPm5IILLsi73/3urLfeelm8eHGS5Nhjj81rXvOaB7w+BTwAAGDGLFu2LPPmzcsWW2yRJHn1q1+dc845Z9xhTzrppOywww5ZsGBBLr744lxyySUrnP4+++yTefPm5X3ve1/e+MY3JumusH3gAx/I/Pnzs+uuu+auu+7KT3/605x55pk54IADssYa3aNKNtxww/zgBz8Yt7411lgju+++e/793/89S5cuzamnnpo99tgj5557bi655JLssssumT9/fj796U/nJz/5yb317LXXXve+3m+//XLsscdm2bJlOfHEE/PKV75y5VbiCA9ZAQAAHvJ+/OMf5/DDD893vvOdbLDBBtl3331z1113rXC8448/PjvuuGMOOuigvPnNb86//du/pbWWf/3Xf82Tn/zkB1TT3nvvnY9+9KPZcMMNs3Dhwqy77rppreV5z3teTjjhhHHHWWedde59/fKXvzzvec978uxnPzs77rhj5syZ84DqSVzBAwAAZtCsWbOyZMmSXHHFFUmSz3zmM3nWs56VJFl33XVz2223JUl++ctfZp111sl6662X6667Ll/5ylcmPY+qynvf+96ce+65ueyyy/KCF7wgH/nIR9Ja98TP7373u0mS5z3vefnEJz6RpUuXJkluvvnmPPnJT56wvmc961m54IILcswxx2TvvfdOkuy888755je/ee/wd9xxR374wx+OW9fs2bPzghe8IK9//etXSfPMxBU8AABYra3oZw2m2+zZs3Psscdmzz33zNKlS7PTTjvlwAMPTJLsv//+2X333e+9F2/BggV5ylOeks022yy77LLLlObzyEc+Mm9/+9vzwQ9+MB/96Efz1re+Ndttt13uvvvuzJs3L//xH/+R/fbbLz/84Q+z3XbbZc0118zrXve6vOlNb5qwvlmzZuXFL35xjjvuuHz6059OksydOzfHHXdcXvGKV+TXv/51kuSwww67t4nnWPvss0+++MUv5vnPf/7KrsL7qHtS68PFwoUL26JFi2a6DFaxh/pPETzMDhMAgAldeuml2XLLLWe6DHqHH354br311rz3ve8dt/9426uqzm+tLRxveFfwAAAAZsDLXvay/OhHP8pZZ521yqYp4AEAAMyAL37xi6t8mh6yAgAAMBACHgAAwEAIeAAAAAMh4AEAAAyEgAcAAKuxqlX7N1lf+tKXUlW57LLLVjjsEUcckTvvvPPe9y960Ytyyy23rMzi3sftt9+eAw44IE94whOy4447Ztddd8155533gKc7kwQ8AADgQXfCCSfkGc94Rk444YQVDjs24J122mlZf/31H3AN++23XzbccMNcfvnlOf/883PsscfmxhtvfMDTnUkCHgAA8KC6/fbb81//9V/55Cc/mc9//vP3dl+2bFne8Y53ZJtttsl2222Xj3zkIznyyCNz7bXXZrfddstuu+2WJNl8881z44035p3vfGc+9rGP3Tv+IYccksMPPzxJ8sEPfjA77bRTtttuuxx88MH3q+FHP/pRzjvvvBx22GF5xCO6WDRv3rz80R/9UZLkpS99aXbcccdsvfXWOfroo++tb999980222yTbbfdNh/+8Ifvndbuu++eHXfcMX/4h39471XJL3zhC9lmm22y/fbb55nPfOaqXo3j8jt4AADAg+rLX/5ydt9992yxxRaZM2dOzj///Oy44445+uijs2TJkixevDhrrLFGbr755my44Yb50Ic+lLPPPjsbbbTRfaaz11575a1vfWve+MY3JklOOumknH766TnjjDNy+eWX59vf/nZaa3nJS16Sc8455z4h6+KLL878+fMza9ascWv81Kc+lQ033Nm81FAAACAASURBVDC/+tWvstNOO+XlL395lixZkmuuuSbf//73k+TeZqL7779/jjrqqDzpSU/Keeedlze84Q0566yzcuihh+b000/PJptsskqalE6GK3gAAMCD6oQTTsjee++dJNl7773vbaZ55pln5oADDsgaa3TXoTbccMPlTmfBggW5/vrrc+211+bCCy/MBhtskM022yxnnHFGzjjjjCxYsCA77LBDLrvsslx++eVTqvHII4/M9ttvn5133jlXXXVVLr/88vz+7/9+rrzyyrz5zW/OV7/61TzmMY/J7bffnm9961vZc889M3/+/BxwwAH52c9+liTZZZddsu++++aYY47JsmXLprqaVooreAAAwIPm5ptvzllnnZXvfe97qaosW7YsVZUPfvCDKzW9PffcMyeffHJ+/vOfZ6+99kqStNbyrne9KwcccMCE42299da58MILs2zZsvtdxfv617+eM888M//93/+dRz3qUdl1111z1113ZYMNNsiFF16Y008/PUcddVROOumkHHHEEVl//fWzePHi+83jqKOOynnnnZdTTz01O+64Y84///zMmTNnpZZzslzBAwAAHjQnn3xy/vzP/zw/+clPsmTJklx11VWZN29e/vM//zPPe97z8olPfCJLly5N0oXBJFl33XVz2223jTu9vfbaK5///Odz8sknZ88990ySvOAFL8inPvWp3H777UmSa665Jtdff/19xnvCE56QhQsX5uCDD05rLUmyZMmSnHrqqbn11luzwQYb5FGPelQuu+yynHvuuUmSG2+8MXfffXde/vKX57DDDssFF1yQxzzmMZk3b16+8IUvJOnC5YUXXpikuzfvaU97Wg499NDMnTs3V1111apcleMS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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "markdown", "metadata": { "id": "Zhn3pHstrSqI", "colab_type": "text" }, "source": [ "In the above plot, we can easily visualize which country is doing well in terms of recovery or active cases, etc.\n", "\n", "---" ] }, { "cell_type": "markdown", "metadata": { "id": "F3TUVo58rTww", "colab_type": "text" }, "source": [ "# **Conclusion**\n", "\n", "The bar plot is one of the most simple and interesting plots available in the matplotlib library. It’s fun to learn, I hope you guys have completely understood the in and out of the bar plot. Below is the brief table of contents I covered in the above part of the tutorial. Go take a look and make things clear in your head and come back to me if not.\n", "\n", "## **Table of contents:**\n", "\n", "* The general syntax of the bar plot\n", "\n", "* Simple bar plot with no tricks involved\n", "\n", "* Learning how to use special parameters\n", "\n", "* Plotting a bar plot horizontally\n", "\n", "* Stacking two bar plot on top of another\n", "\n", "* Plotting three-bar plots next to another (Grouping)\n", "\n", "* Overriding the x-axis, learning what magic can `xticks` do.\n", "\n", "* Lastly, saving a plot as an image (png).\n", "\n", "Thank you guys that’s it for this tutorial “**Mastering the Bar Plot in Python**”. Hope you have learned something new today, feel free to explore more create cool bar plots. See you stay tuned for more updates until then stay safe.\n", "\n", "---" ] } ] }