{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "<small><small><i>\n", "All the IPython Notebooks in **[Python Seaborn Module](https://github.com/milaan9/12_Python_Seaborn_Module)** lecture series by **[Dr. Milaan Parmar](https://www.linkedin.com/in/milaanparmar/)** are available @ **[GitHub](https://github.com/milaan9)**\n", "</i></small></small>" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "<a href=\"https://colab.research.google.com/github/milaan9/12_Python_Seaborn_Module/blob/main/018_Seaborn_Heat_Map.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# What is heat map?\n", "\n", "A heat map (or heatmap) is a graphical representation of data where the individual values contained in a matrix are represented as colors. It is a bit like looking a data table from above. It is really useful to display a general view of numerical data, not to extract specific data point. It is quite straight forward to make a heat map, as shown on the examples below. However be careful to understand the underlying mechanisms. You will probably need to normalise your matrix, choose a relevant colour palette, use cluster analysis and thus permute the rows and the columns of the matrix to place similar values near each other according to the clustering.\n", "\n", "A **[heatmap](http://seaborn.pydata.org/generated/seaborn.heatmap.html?highlight=heatmap#seaborn.heatmap)** is a plot of rectangular data as a color-encoded matrix. As parameter it takes a 2D dataset. That dataset can be coerced into an ndarray.\n", "\n", "This is a great way to visualize data, because it can show the relation between variabels including time. For instance, the number of fligths through the years.\n", "\n", "Various types of heatmap can be found **[here](https://python-graph-gallery.com/90-heatmaps-with-various-input-format/)**" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "ExecuteTime": { "end_time": "2021-07-18T17:50:40.741915Z", "start_time": "2021-07-18T17:50:14.092290Z" } }, "outputs": [], "source": [ "import numpy as np\n", "import pandas as pd\n", "import seaborn as sns\n", "import matplotlib.pyplot as plt\n", "\n", "%matplotlib inline" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### heatmap\n", "\n", "The heatmap plot below is based on random values generated by numpy. Many parameters are possible, this just shows the most basic plot." ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "ExecuteTime": { "end_time": "2021-07-18T17:50:42.787791Z", "start_time": "2021-07-18T17:50:40.744845Z" } }, "outputs": [ { "data": { "text/plain": [ "<AxesSubplot:>" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "<Figure size 432x288 with 2 Axes>" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# Plot a heatmap for a numpy array:\n", "\n", "uniform_data = np.random.rand(10,12)\n", "#uniform_data = np.arange(1,17).reshape(4,4)\n", "sns.heatmap(uniform_data)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "ExecuteTime": { "end_time": "2021-07-18T17:50:43.224313Z", "start_time": "2021-07-18T17:50:42.797561Z" } }, "outputs": [ { "data": { "text/plain": [ "array([[1, 2, 3, 4],\n", " [2, 3, 4, 1],\n", " [5, 4, 2, 1],\n", " [6, 7, 8, 5]])" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "<Figure size 432x288 with 2 Axes>" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "x = np.array([[1,2,3,4],[2,3,4,1],[5,4,2,1],[6,7,8,5]])\n", "sns.heatmap(x)\n", "x" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Three** main types of **input** exist to plot heatmap, let’s study them one by one." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Wide format (untidy)\n", "\n", "We call **‘wide format‘** or **‘untidy format‘** a matrix where each row is an individual, and each column represents an observation. In this case, a **heatmap** consists to make a visual representation of the matrix: each square of the heatmap represents a cell. The color of the cell changes following its value." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "ExecuteTime": { "end_time": "2021-07-18T17:50:43.691106Z", "start_time": "2021-07-18T17:50:43.238962Z" }, "scrolled": true }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "<Figure size 432x288 with 2 Axes>" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "df = pd.DataFrame(np.random.random((5,5)), columns=[\"a\",\"b\",\"c\",\"d\",\"e\"])\n", "\n", "# Default heatmap: just a visualization of this square matrix\n", "p1 = sns.heatmap(df)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### heatmap colors\n", "\n", "The heatmap colors plot below uses random data again. This time it’s using a different color map (cmap), with the ‘Blues’ palette which as nothing but colors of bue. It also uses square blocks." ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "ExecuteTime": { "end_time": "2021-07-18T17:50:44.107116Z", "start_time": "2021-07-18T17:50:43.708194Z" }, "scrolled": true }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "<Figure size 432x288 with 1 Axes>" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "corr = df.corr()\n", "\n", "ax1 = sns.heatmap(corr, cbar=0, linewidths=2,vmax=1, vmin=0, square=True, cmap='Blues')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### heatmap data\n", "\n", "The heatmap data plot is similar, but uses a different color palette. It uses the airline or flights dataset that’s included in seaborn." ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "ExecuteTime": { "end_time": "2021-07-18T17:50:45.328780Z", "start_time": "2021-07-18T17:50:44.113950Z" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "<Figure size 432x288 with 2 Axes>" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sns.set()\n", "flights = sns.load_dataset(\"flights\")\n", "flights = flights.pivot(\"month\", \"year\", \"passengers\")\n", "ax = sns.heatmap(flights)\n", "plt.title(\"Heatmap Flight Data\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In next class we'll learn **[Cluster Map](https://github.com/milaan9/12_Python_Seaborn_Module/blob/main/019_Seaborn_Cluster_Map.ipynb)**" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "hide_input": false, "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.8.8" }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": true, "sideBar": true, "skip_h1_title": false, "title_cell": "Table of Contents", "title_sidebar": "Contents", "toc_cell": false, "toc_position": {}, "toc_section_display": true, "toc_window_display": false }, "varInspector": { "cols": { "lenName": 16, "lenType": 16, "lenVar": 40 }, "kernels_config": { "python": { "delete_cmd_postfix": "", "delete_cmd_prefix": "del ", "library": "var_list.py", "varRefreshCmd": "print(var_dic_list())" }, "r": { "delete_cmd_postfix": ") ", "delete_cmd_prefix": "rm(", "library": "var_list.r", "varRefreshCmd": "cat(var_dic_list()) " } }, "types_to_exclude": [ "module", "function", "builtin_function_or_method", "instance", "_Feature" ], "window_display": false } }, "nbformat": 4, "nbformat_minor": 2 }