Repository where I mostly put random python scripts.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

699 lines
260 KiB

  1. {
  2. "cells": [
  3. {
  4. "cell_type": "markdown",
  5. "metadata": {},
  6. "source": [
  7. "Today we are going to visualize my life using Fitbit and Matplotlib. \n",
  8. "\n",
  9. "# What is Fitbit\n",
  10. "\n",
  11. "[Fitbit](https://www.fitbit.com) is a fitness watch that tracks your sleep, heart rate, and activity.\n",
  12. "Fitbit is able to track your steps, however, it is also able to detect multiple types of activity\n",
  13. "like running, walking, \"sport\" and biking."
  14. ]
  15. },
  16. {
  17. "cell_type": "markdown",
  18. "metadata": {},
  19. "source": [
  20. "# What is Matplotlib\n",
  21. "\n",
  22. "[Matplotlib](https://matplotlib.org/) is a python visualization library that enables you to create bar graphs, line graphs, distributions and many more things.\n",
  23. "Being able to visualize your results is essential to any person working with data at any scale.\n",
  24. "Although I like [GGplot](https://ggplot2.tidyverse.org/) in R more than Matplotlib, Matplotlib is still my go to graphing library for Python. "
  25. ]
  26. },
  27. {
  28. "cell_type": "markdown",
  29. "metadata": {},
  30. "source": [
  31. "# Getting Your Data\n",
  32. "\n",
  33. "There are two main ways that you can get your Fitbit data:\n",
  34. "\n",
  35. "- Fitbit API\n",
  36. "- Data Archival Export\n",
  37. "\n",
  38. "\n",
  39. "Since connecting to the API and setting up all the web hooks can be a pain, I'm just going to use the data export option because this is only for one person.\n",
  40. "You can export your data here: [https://www.fitbit.com/settings/data/export](https://www.fitbit.com/settings/data/export).\n",
  41. "\n",
  42. "![Data export on fitbit's website](dataExport.png)\n",
  43. "\n",
  44. "The Fitbit data archive was very organized and kept meticulous records of everything. \n",
  45. "All of the data was organized in separate JSON files labeled by date.\n",
  46. "Fitbit keeps around 1MB of data on you per day; most of this data is from the heart rate sensors.\n",
  47. "Although 1MB of data may sound like a ton of data, it is probably a lot less if you store it in formats other than JSON. \n",
  48. "When I downloaded the compressed file it was 20MB, but when I extracted it, it was 380MB!\n",
  49. "I've only been using Fitbit for 11 months at this point. \n",
  50. "\n",
  51. "![compressed data](compression.png)"
  52. ]
  53. },
  54. {
  55. "cell_type": "markdown",
  56. "metadata": {},
  57. "source": [
  58. "## Sleep\n",
  59. "\n",
  60. "Sleep is something fun to visualize.\n",
  61. "No matter how much of it you get you still feel tired as a college student.\n",
  62. "\n"
  63. ]
  64. },
  65. {
  66. "cell_type": "code",
  67. "execution_count": 1,
  68. "metadata": {},
  69. "outputs": [],
  70. "source": [
  71. "import matplotlib.pyplot as plt\n",
  72. "import pandas as pd\n",
  73. "\n",
  74. "sleep_score_df = pd.read_csv('data/sleep/sleep_score.csv')"
  75. ]
  76. },
  77. {
  78. "cell_type": "code",
  79. "execution_count": 2,
  80. "metadata": {},
  81. "outputs": [
  82. {
  83. "name": "stdout",
  84. "output_type": "stream",
  85. "text": [
  86. " sleep_log_entry_id timestamp overall_score \\\n",
  87. "0 26093459526 2020-02-27T06:04:30Z 80 \n",
  88. "1 26081303207 2020-02-26T06:13:30Z 83 \n",
  89. "2 26062481322 2020-02-25T06:00:30Z 82 \n",
  90. "3 26045941555 2020-02-24T05:49:30Z 79 \n",
  91. "4 26034268762 2020-02-23T08:35:30Z 75 \n",
  92. ".. ... ... ... \n",
  93. "176 23696231032 2019-09-02T07:38:30Z 79 \n",
  94. "177 23684345925 2019-09-01T07:15:30Z 84 \n",
  95. "178 23673204871 2019-08-31T07:11:00Z 74 \n",
  96. "179 23661278483 2019-08-30T06:34:00Z 73 \n",
  97. "180 23646265400 2019-08-29T05:55:00Z 80 \n",
  98. "\n",
  99. " composition_score revitalization_score duration_score \\\n",
  100. "0 20 19 41 \n",
  101. "1 22 21 40 \n",
  102. "2 22 21 39 \n",
  103. "3 17 20 42 \n",
  104. "4 20 16 39 \n",
  105. ".. ... ... ... \n",
  106. "176 20 20 39 \n",
  107. "177 22 21 41 \n",
  108. "178 18 21 35 \n",
  109. "179 17 19 37 \n",
  110. "180 21 21 38 \n",
  111. "\n",
  112. " deep_sleep_in_minutes resting_heart_rate restlessness \n",
  113. "0 65 60 0.117330 \n",
  114. "1 85 60 0.113188 \n",
  115. "2 95 60 0.120635 \n",
  116. "3 52 61 0.111224 \n",
  117. "4 43 59 0.154774 \n",
  118. ".. ... ... ... \n",
  119. "176 88 56 0.170923 \n",
  120. "177 95 56 0.133268 \n",
  121. "178 73 56 0.102703 \n",
  122. "179 50 55 0.121086 \n",
  123. "180 61 57 0.112961 \n",
  124. "\n",
  125. "[181 rows x 9 columns]\n"
  126. ]
  127. }
  128. ],
  129. "source": [
  130. "print(sleep_score_df)"
  131. ]
  132. },
  133. {
  134. "cell_type": "code",
  135. "execution_count": 3,
  136. "metadata": {},
  137. "outputs": [
  138. {
  139. "data": {
  140. "text/plain": [
  141. "array([[<matplotlib.axes._subplots.AxesSubplot object at 0x7f5c2bcb6690>]],\n",
  142. " dtype=object)"
  143. ]
  144. },
  145. "execution_count": 3,
  146. "metadata": {},
  147. "output_type": "execute_result"
  148. },
  149. {
  150. "data": {
  151. "image/png": "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
  152. "text/plain": [
  153. "<Figure size 432x288 with 1 Axes>"
  154. ]
  155. },
  156. "metadata": {
  157. "needs_background": "light"
  158. },
  159. "output_type": "display_data"
  160. }
  161. ],
  162. "source": [
  163. "sleep_score_df.hist(column='overall_score')"
  164. ]
  165. },
  166. {
  167. "cell_type": "code",
  168. "execution_count": 4,
  169. "metadata": {},
  170. "outputs": [
  171. {
  172. "data": {
  173. "text/plain": [
  174. "array([[<matplotlib.axes._subplots.AxesSubplot object at 0x7f5c29ca4150>]],\n",
  175. " dtype=object)"
  176. ]
  177. },
  178. "execution_count": 4,
  179. "metadata": {},
  180. "output_type": "execute_result"
  181. },
  182. {
  183. "data": {
  184. "image/png": "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
  185. "text/plain": [
  186. "<Figure size 432x288 with 1 Axes>"
  187. ]
  188. },
  189. "metadata": {
  190. "needs_background": "light"
  191. },
  192. "output_type": "display_data"
  193. }
  194. ],
  195. "source": [
  196. "sleep_score_df.hist(column='resting_heart_rate')"
  197. ]
  198. },
  199. {
  200. "cell_type": "markdown",
  201. "metadata": {},
  202. "source": [
  203. "## Heart Rate\n",
  204. "\n",
  205. "Fitbit keeps their calculated heart rates in the sleep scores file rather than heart."
  206. ]
  207. },
  208. {
  209. "cell_type": "code",
  210. "execution_count": 5,
  211. "metadata": {},
  212. "outputs": [
  213. {
  214. "data": {
  215. "text/plain": [
  216. "array([[<matplotlib.axes._subplots.AxesSubplot object at 0x7f5c27acc650>]],\n",
  217. " dtype=object)"
  218. ]
  219. },
  220. "execution_count": 5,
  221. "metadata": {},
  222. "output_type": "execute_result"
  223. },
  224. {
  225. "data": {
  226. "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXAAAAEICAYAAABGaK+TAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAATWklEQVR4nO3df5Dcd33f8ecLKxiPBZYdmauwHV8SDC2DWoIvxpmU5hTXibAd7GkDhQKRExOVTCEwI1oUOpOQdmhFqNOBCdPEEBJNIFEcg7HHhtbGycGQ2IAEGOGYVMQo/oGRDLGMz5gfwu/+sV8119Odbm9vT7sf8XzM7Ox+f+xn3++9+77uu9/97l6qCklSe5406gIkSYMxwCWpUQa4JDXKAJekRhngktQoA1ySGmWAaywkeUWSW1b5MWaSvHo1H0M6ngxwHXdJJpNUkjVH5lXV+6vqZ0ZZ1zAlmU5y/yqOX0meuVrjqw0GuAY2N4D1D1b6vPi8ql8GuJYlyf4kb0ryeeCxJD+U5ANJHkry5SS/OmfdC5LsTvKNJAeS/Ha36OPd9aEks0l+IsmVST4x576V5DVJ9iV5OMm7kqRbdlKSq5N8rXvM187foz+Gc5P8ZZJHk9ySZP2cx7wwyV8lOZTkziTTc5b9YpK7u/vdk+TfzVk2neT+7nn5KvAnwEeAZ3T9zSZ5xjGe07ckuS7J+5J8A7iye+5u72p5MMnvJHlyt/6R5+/Obux/082/LMnnuvv8VZJ/2sfzoZZVlRcvfV+A/cDngHOAU4E9wK8DTwZ+BLgH+Nlu3duBV3W31wIXdrcngQLWzBn3SuATc6YLuAlYB/wQ8BCwuVv2GuCvgbOB04GPzh9vkdpngL8FngWc0k3v6JadBXwduITejs3F3fSZ3fJLgR8FAvwU8E3g+d2yaeAw8Dbg5G7saeD+Pp/TtwDfBa7oHvsU4HzgQmBN93zdDbxh3vPzzDnTzwcOAi8ATgK2dD+rk0f9O+Nl9S7ugWsQ76yq+4Dn0gu4/1xV36mqe4B3Ay/r1vsu8Mwk66tqtqruWObj7KiqQ1V1L/AXwPO6+S8F3lFV91fVw8COZYz5B1X1f6rqceDaOWO+EvhwVX24qp6oqluB3fQCnaq6uar+tno+BtwCvHDOuE8Av1FV3+7GXq7bq+pD3WM/XlV7quqOqjpcVfuB36P3h2Mxvwz8XlV9sqq+V1U7gW/T+yOgE5QBrkHc112fS+8wwaEjF+DNwES3/Cp6e7tfTPLpJJct83G+Ouf2N+ntxQM8Y04NzLs96JjnAi+Z18s/BzYAJHlRkjuS/H237BJg/ZyxHqqqby2jjvn+vx6SPCvJTUm+2h1W+a/zHm++c4Ft8+o/h95zpROUb5ZoEEe+wvI+4MtVdd6CK1XtA16e5EnAvwKuS/KDc+4/qAfpHT454pwVjge9Xv6oqn55/oIkJwMfAH4BuKGqvpvkQ/QOpxwxv6fl9jh//f8JfBZ4eVU9muQNwM8vUf9bq+qty3xcNcw9cK3Ep4BvdG/endK9ufjcJD8OkOSVSc6sqieAQ919vkfvePYT9I6ZD+Ja4PVJzkqyDnjTCvsAeB/wc0l+tuvjKd2bk2fTO75/clf34SQvApY65fEA8INJThuwnqcC3wBmk/xj4FcWGH/u8/du4DVJXpCeU5NcmuSpAz6+GmCAa2BV9T3g5+gdR/4y8DXgPcCR0NoM3JVkFngH8LKq+lZVfRN4K/CX3cv95R6nfTe9Y9Cfp7eX+mF6byJ+bwW93AdcTu8Q0EP09mj/A/CkqnoU+FV6fzgeBv4tcOMS432R3tko93Q9LvdQxhu7x3mUXr9/Om/5W4Cd3dgvrard9I6D/05X45fovTGsE1iq/IcOalu3R/y7VXXuqGuRjif3wNWc7nDNJUnWJDkL+A3g+lHXJR1vBrhaFOA36R0q+Cy9c6R/HWDOB2fmX154jPFWXZKPLFLXm0dZl9rmIRRJapR74JLUqON6Hvj69etrcnJyoPs+9thjnHrqqcMtaETsZfycKH2AvYyrlfSyZ8+er1XVmfPnH9cAn5ycZPfu3QPdd2Zmhunp6eEWNCL2Mn5OlD7AXsbVSnpJ8ncLzfcQiiQ1ygCXpEYZ4JLUKANckhplgEtSowxwSWqUAS5JjTLAJalRBrgkNcp/qaajTG6/ue91t208zJXLWH8p+3dcOrSxpBOde+CS1CgDXJIaZYBLUqMMcElqlAEuSY0ywCWpUQa4JDXKAJekRhngktQoA1ySGmWAS1KjDHBJapQBLkmNMsAlqVEGuCQ1ygCXpEYZ4JLUKANckhplgEtSo/oO8CQnJflskpu66TOS3JpkX3d9+uqVKUmabzl74K8H7p4zvR24rarOA27rpiVJx0lfAZ7kbOBS4D1zZl8O7Oxu7wSuGG5pkqRjSVUtvVJyHfDfgKcCb6yqy5Icqqp1c9Z5uKqOOoySZCuwFWBiYuL8Xbt2DVTo7Owsa9euHei+42bce9n7wCN9rztxChx4fHiPvfGs04Y32DKM+89kOexlPK2kl02bNu2pqqn589csdccklwEHq2pPkunlPnBVXQNcAzA1NVXT08seAoCZmRkGve+4Gfdertx+c9/rbtt4mKv3Lvlr1Lf9r5ge2ljLMe4/k+Wwl/G0Gr30s+X9JPDiJJcATwGeluR9wIEkG6rqwSQbgINDrUySdExLHgOvql+rqrOrahJ4GfDnVfVK4EZgS7faFuCGVatSknSUlZwHvgO4OMk+4OJuWpJ0nCzr4GVVzQAz3e2vAxcNvyRJUj/8JKYkNcoAl6RGGeCS1CgDXJIaZYBLUqMMcElqlAEuSY0ywCWpUQa4JDXKAJekRhngktQoA1ySGjW8b+KXGrb3gUeW9Y8shmn/jktH8rhqn3vgktQoA1ySGmWAS1KjDHBJapQBLkmNMsAlqVEGuCQ1ygCXpEYZ4JLUKANckhplgEtSowxwSWqUAS5JjTLAJalRBrgkNcoAl6RGGeCS1CgDXJIaZYBLUqMMcElqlAEuSY0ywCWpUWtGXYAWN7n95lGXcNyNqudtG0fysNKKuAcuSY1aMsCTPCXJp5LcmeSuJL/ZzT8jya1J9nXXp69+uZKkI/rZA/828NNV9c+A5wGbk1wIbAduq6rzgNu6aUnScbJkgFfPbDf5A92lgMuBnd38ncAVq1KhJGlBqaqlV0pOAvYAzwTeVVVvSnKoqtbNWefhqjrqMEqSrcBWgImJifN37do1UKGzs7OsXbt2oPuOm3572fvAI8ehmpWZOAUOPD7qKlZulH1sPOu0oY73/bittGAlvWzatGlPVU3Nn99XgP+/lZN1wPXA64BP9BPgc01NTdXu3bv7r3qOmZkZpqenB7rvuOm3lxbOQtm28TBX723/ZKZR9rF/x6VDHe/7cVtpwUp6SbJggC/rLJSqOgTMAJuBA0k2dINvAA4OVJkkaSD9nIVyZrfnTZJTgH8JfBG4EdjSrbYFuGG1ipQkHa2f14wbgJ3dcfAnAddW1U1JbgeuTXIVcC/wklWsU5I0z5IBXlWfB35sgflfBy5ajaIkSUvzk5iS1CgDXJIaZYBLUqMMcElqlAEuSY0ywCWpUQa4JDXKAJekRhngktQoA1ySGmWAS1KjDHBJapQBLkmNMsAlqVEGuCQ1ygCXpEYZ4JLUKANckhplgEtSowxwSWqUAS5JjTLAJalRBrgkNcoAl6RGGeCS1CgDXJIaZYBLUqMMcElqlAEuSY0ywCWpUQa4JDXKAJekRhngktQoA1ySGmWAS1Kj1oy6gBZMbr95qONt23iYK4c8pqTvP+6BS1KjlgzwJOck+Yskdye5K8nru/lnJLk1yb7u+vTVL1eSdEQ/e+CHgW1V9U+AC4F/n+Q5wHbgtqo6D7itm5YkHSdLBnhVPVhVn+luPwrcDZwFXA7s7FbbCVyxWkVKko6Wqup/5WQS+DjwXODeqlo3Z9nDVXXUYZQkW4GtABMTE+fv2rVroEJnZ2dZu3btQPddqb0PPDLU8SZOgQOPD3XIkTlRehllHxvPOm2o441yWxk2e+nZtGnTnqqamj+
  227. "text/plain": [
  228. "<Figure size 432x288 with 1 Axes>"
  229. ]
  230. },
  231. "metadata": {
  232. "needs_background": "light"
  233. },
  234. "output_type": "display_data"
  235. }
  236. ],
  237. "source": [
  238. "sleep_score_df.hist(column='resting_heart_rate')"
  239. ]
  240. },
  241. {
  242. "cell_type": "code",
  243. "execution_count": 6,
  244. "metadata": {},
  245. "outputs": [
  246. {
  247. "data": {
  248. "text/plain": [
  249. "<matplotlib.axes._subplots.AxesSubplot at 0x7f5c27b32850>"
  250. ]
  251. },
  252. "execution_count": 6,
  253. "metadata": {},
  254. "output_type": "execute_result"
  255. },
  256. {
  257. "data": {
  258. "image/png": "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
  259. "text/plain": [
  260. "<Figure size 432x288 with 1 Axes>"
  261. ]
  262. },
  263. "metadata": {
  264. "needs_background": "light"
  265. },
  266. "output_type": "display_data"
  267. }
  268. ],
  269. "source": [
  270. "sleep_score_df.plot(kind='line', y='resting_heart_rate', x ='timestamp', legend=False, title=\"Resting Heart Rate(BPM)\")"
  271. ]
  272. },
  273. {
  274. "cell_type": "code",
  275. "execution_count": 7,
  276. "metadata": {},
  277. "outputs": [
  278. {
  279. "data": {
  280. "text/plain": [
  281. "<matplotlib.axes._subplots.AxesSubplot at 0x7f5c27987590>"
  282. ]
  283. },
  284. "execution_count": 7,
  285. "metadata": {},
  286. "output_type": "execute_result"
  287. },
  288. {
  289. "data": {
  290. "image/png": "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
  291. "text/plain": [
  292. "<Figure size 432x288 with 1 Axes>"
  293. ]
  294. },
  295. "metadata": {
  296. "needs_background": "light"
  297. },
  298. "output_type": "display_data"
  299. }
  300. ],
  301. "source": [
  302. "sleep_score_df = pd.read_csv('data/sleep/sleep_score.csv', parse_dates=[1])\n",
  303. "sleep_score_df.plot(kind='line', y='resting_heart_rate', x ='timestamp', legend=False, title=\"Resting Heart Rate(BPM)\")"
  304. ]
  305. },
  306. {
  307. "cell_type": "code",
  308. "execution_count": 8,
  309. "metadata": {},
  310. "outputs": [
  311. {
  312. "data": {
  313. "image/png": "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
  314. "text/plain": [
  315. "<Figure size 432x288 with 1 Axes>"
  316. ]
  317. },
  318. "metadata": {
  319. "needs_background": "light"
  320. },
  321. "output_type": "display_data"
  322. }
  323. ],
  324. "source": [
  325. "ax = plt.gca()\n",
  326. "sleep_score_df.plot(kind='line', y='resting_heart_rate', x ='timestamp', legend=False, title=\"Resting Heart Rate Graph\", ax=ax)\n",
  327. "plt.xlabel(\"Date\")\n",
  328. "plt.ylabel(\"Resting Heart Rate (BPM)\")\n",
  329. "plt.show()"
  330. ]
  331. },
  332. {
  333. "cell_type": "code",
  334. "execution_count": 9,
  335. "metadata": {},
  336. "outputs": [
  337. {
  338. "data": {
  339. "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYEAAAEUCAYAAADN8orUAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAAgAElEQVR4nOy9Z5gkV3k2fJ9KnSeH3Z3NSStpJYS0yiCEJJLgRXqNwfgzfAjbYILBvMZEk4PRh22yQZYRr7ANIgsw2AihnKVVXmm1OYfJM527q6rP9+OEOtVd3dM92z1ht+/rmmu3U9WpU6fO8zz3kwilFG200UYbbZya0OZ7AG200UYbbcwf2kKgjTbaaOMURlsItNFGG22cwmgLgTbaaKONUxhtIdBGG220cQqjLQTaaKONNk5htIXAKQpCyHWEkPvnexyLAYSQ5wghl8/3OBoFIeQGQsgn53scJwpCyOWEkMPzPY6TFW0hcBKDEPISQsiDhJBpQsgEIeQBQsj58zymMwkhvyeETBJCpgghjxNCrp7H8fwZISTN/3KEkJLyOg0AlNIzKaV3z8FYuggh3yOEHCeEpAghOwkhH5nt8Sil76KUfr6ZYwQAQsgWQshvlHv4PCHki4SQ7mafq43Woy0ETlIQQjoA/AbANwH0ABgC8FkAhfkcF4D/AnA7gEEAAwDeDyDZzBMQQox6v0sp/QGlNE4pjQN4DYCj4jV/by7xVQBxAKcD6ATwegB7ZnMgQojexHGpx70EwN0AHgCwiVLaBeDVABwAL6rym7rvRxvzAEpp++8k/AOwBcBUjc+vA3C/8noT2OY8AWAHgDcpn4UA/BOAgwCGAdwAIMI/uxzAYQAfBzAGYD+AP6tyzj4AFEBXjXFdA+ApMMGwB8Cr+fvLAPyaj283gHcov/kMgJ8B+E/+u78EU3A+yo8xDuAnAHpmmLPLARwOeH8/gKuUc/2UnysF4FkAGwF8DMAIgEMAXqn8thPATQCOATgC4AsA9Crn3wbg2hrjq3WPbgbwHQD/DSAD4Cr+3heU77yOz+0UgAcBnK189hE+vhQ/9pVVxnA/gG/OMI/XgQmJr/KxfgHAOgB38nsxBuAH6jrgc/wxAM8DmATwfwGEy9bYB/kcHwPw9vl+xk6Wv3kfQPuvRTcW6OAP3PfBNNzuss+vAxcCAGJ883o7AAPAufxBPZN//jW+AfcASIBp81/in10OpgV+BUxYvIxvQqcFjIkA2AVmoVwLYLDs8wsATAN4BdgmPgSmbQLAPQC+DSAM4BwAo2KjAtuYbX5MDUAEwAcAPAxgOR/XvwK4ZYY5uxz1CYE8gFfxufp3APsA/D0AE8A7AOxTfvtLfu4YmOXzKIC/qnL+7wJ4jt+HDWWfzXSPbuZzdymfgzAUIcC/PwLgQgA6gLfx6woBOI0fexn/7moA6wLGFwPgArh8hnm8jq+J9/GxRgCs5/c1BKAfwL0AvlY2x9sArABbZw8oY7+cH+9zfI6vBpBF2Zpu/81yr5jvAbT/WnhzGa1wM5gW5YBt5IP8s+vgCYE/AXBf2W//FcCnwTbujLopALhYbHTKAxpTPv8JgE9WGdNyAN8C09BLfDPYoJzzqwG/WcE3n4Ty3pcA3Mz//xkA95b9ZjsUbRbAUjBBYdSYr8tRnxC4XfnsfwFIg2v3YEKSAugCo7wK4FYT//xPAdxV5fwRMIvqcT7W3QBeM9M94v+/GcC/l31+s7KRfgfA58s+3wEmtNeDCYirAJg15mc5v7ZNyntfBrMsMgA+oaytgzOszWsBPFk2x+9SXl8NYI9yX3LqvePjvWi+n7GT4a/tEziJQSndTim9jlK6HMBmMErlawFfXQXgQu7kmyKETAH4MwBLwLS2KIDHlc9+x98XmKSUZpTXB/i5gsZ0mFL615TSdfy8GTBtGmCbfRAHvgzABKU0VXaOIeX1oYBrulUZ83YwQTIYNK4GMaz8PwdgjFLqKq8Bxu2vAtNcjynj+Fcwi6AClNIcpfQfKKXnAegFE6Y/JYT0oPY9EiifAxWrAHyw7PcrwLT/3WCW02cAjBBCfkQICbp/k2CCe6ky5g9T5he4FUzrDxwLIWSAH/cIISQJRqf1lR1f/U35GhqnlDrK6yzYHLdxgmgLgVMElNIXwDTDzQEfHwJwD6W0S/mLU0rfDUY55MBoB/FZJ/U7TbsJITHl9UoAR+sY0yEA/6KM6RAYd1yOowB6CCGJsnMcUQ8XcE2vKbumMKX0COYOh8AsgT5lDB2U0jNn+iGlNAngH8AomDWofY/kz2YYyxfLfh+llN7Cz/dDSulLwIQFBfD/BYwpA+ARAH9Ux7WXj+VL/L2zKaUdAN4CZmWqWKH8v6411MaJoy0ETlIQQjYRQj5ICFnOX68AoyIeDvj6bwBsJIS8lRBi8r/zCSGnU0pLAP4NwFcJIQP8WEOEkFeVHeOzhBCLEPJSMAfkTwPG1E0I+SwhZD0hRCOE9AH4c2VMNwF4OyHkSv75ECFkExcWDwL4EiEkTAg5G8BfgDkXq+EGAF8khKzi5+4nhFxTx9Q1DZTSYwB+D+CfCSEd/JrWEUJeFvR9Qsgn+bxbhJAwgL8Bo1p2oMY9qnM4/wbgXYSQCwlDjBDyWkJIghByGiHkCkJICMzfkQOzmoLwYQB/Tgj5qLIeloMJqlpIgNFmU4SQIQAfCvjOewkhy7nl83EAP67z2to4AbSFwMmLFJgT8BFCSAZso90GFmHhA6dZXgngzWDa13EwTTDEv/IRMH76YW7K/wHMmShwHIwqOAq2Mb+LWx7lKII5Hf8AFsWzDUxTvo6P41Ewx+dXwZyc94BppgATYKv5OW4F48Jvr3H9XwfzgfyeEJLi139hje+3Cv8vAAte1MvPoNApZaBgUTFjYNf5CgCvpZSm67hHNUEp3QrmtP4WH8du8Hnnx7ien/c4GF318SrHuR/AFQAuA7BToQfvBgtHrobPgjmnpwH8FsAvAr7zQzChuZf/faGea2vjxEAobTeVaWP2ICyT9j+536GNNmYFQsh+AH9JKf3DfI/lVEPbEmijjTbaOIXRFgJttNFGG6cw2nRQG2200cYpjDmxBAghf0MI2UZYNcYP8Pd6CCG3E0J28X/bxafaaKONNuYYLbcECCGbAfwIrCRAESyS4N1gkQoTlNLrCSEfBUsBr1kxsa+vj65evbql422jjTbaONnw+OOPj1FK+4M+m4vqfqcDeJhSmgUAQsg9AP43WKGwy/l3vg8WYlZTCKxevRpbt25t2UDbaKONNk5GEEIOVPtsLuigbQAuI4T0EkKiYDVBVoDVsDkGyKSawFR6Qsg7CSFbCSFbR0dH52C4bbTRRhunDlouBCil28GSWm4Ho4KeBis4Vu/vb6SUbqGUbunvD7Rm2mijjTbamCXmxDFMKb2JUnoupfQysPriuwAME0KWAgD/d2QuxtJGG2200YaHuYoOEjVGVoIVn7oFLKX/bfwrbwPwq7kYSxtttNFGGx7mqu3bzwkhvWA10t9LKZ0khFwP4CeEkL8A61j1xjkaSxtttNFGGxxzIgQopS8NeG8cwJVzcf422mijjTaC0W4A3UYbiwyOW8J/PHwA6byDzqiJt1y4CppWXpq/jZMJpRLFrU8ewTXnLIOhN5fFbwuBNtpYZHjy0BQ++1/Py9cvXtGNs5Z3zuOI2mg1Ht47jg/+9Gn0JUJ42cbmRkm2C8i10cYiw1iqAAD48hvOBgAcmcrO53DamAMcnGD3eDJTbPqx20KgjTYWGcb5RnD2Cqb9H5nKz+dw2pgDHJ5kraunsm0h0MZJiof2jOPmB/bN9zAWBYQ2uLYvjrCp4egU2yD+6+mj+PXTc9uWN11w8KlfbcN0zp7T8y50jCTz+NSvtiFdqDsvtiYOTzJLYKoF89wWAm0sCPzosYP41l175nsYiwLjmSISIQOWoWFZV0QKgW/euQs33bd3Tsdy/64x/PtDB/DQnvE5Pe9Cx/272bz8x0NVS/Y0BGEJtELYtoVAGwsC4+ki3FJpvoexKDCRKaInbgEAhroiODqdh+OWsG8sM+ca+Z7RNABgNF2Y0/M
  340. "text/plain": [
  341. "<Figure size 432x288 with 1 Axes>"
  342. ]
  343. },
  344. "metadata": {
  345. "needs_background": "light"
  346. },
  347. "output_type": "display_data"
  348. }
  349. ],
  350. "source": [
  351. "ax = plt.gca()\n",
  352. "sleep_score_df.plot(kind='line', y='overall_score', x ='timestamp', legend=False, title=\"Sleep Score Time Series Graph\", ax=ax)\n",
  353. "plt.xlabel(\"Date\")\n",
  354. "plt.ylabel(\"Fitbit's Sleep Score\")\n",
  355. "plt.show()"
  356. ]
  357. },
  358. {
  359. "cell_type": "code",
  360. "execution_count": 10,
  361. "metadata": {},
  362. "outputs": [
  363. {
  364. "name": "stdout",
  365. "output_type": "stream",
  366. "text": [
  367. " sleep_log_entry_id timestamp overall_score \\\n",
  368. "0 26093459526 2020-02-27 06:04:30+00:00 80 \n",
  369. "1 26081303207 2020-02-26 06:13:30+00:00 83 \n",
  370. "2 26062481322 2020-02-25 06:00:30+00:00 82 \n",
  371. "3 26045941555 2020-02-24 05:49:30+00:00 79 \n",
  372. "4 26034268762 2020-02-23 08:35:30+00:00 75 \n",
  373. ".. ... ... ... \n",
  374. "176 23696231032 2019-09-02 07:38:30+00:00 79 \n",
  375. "177 23684345925 2019-09-01 07:15:30+00:00 84 \n",
  376. "178 23673204871 2019-08-31 07:11:00+00:00 74 \n",
  377. "179 23661278483 2019-08-30 06:34:00+00:00 73 \n",
  378. "180 23646265400 2019-08-29 05:55:00+00:00 80 \n",
  379. "\n",
  380. " composition_score revitalization_score duration_score \\\n",
  381. "0 20 19 41 \n",
  382. "1 22 21 40 \n",
  383. "2 22 21 39 \n",
  384. "3 17 20 42 \n",
  385. "4 20 16 39 \n",
  386. ".. ... ... ... \n",
  387. "176 20 20 39 \n",
  388. "177 22 21 41 \n",
  389. "178 18 21 35 \n",
  390. "179 17 19 37 \n",
  391. "180 21 21 38 \n",
  392. "\n",
  393. " deep_sleep_in_minutes resting_heart_rate restlessness weekday \n",
  394. "0 65 60 0.117330 3 \n",
  395. "1 85 60 0.113188 2 \n",
  396. "2 95 60 0.120635 1 \n",
  397. "3 52 61 0.111224 0 \n",
  398. "4 43 59 0.154774 6 \n",
  399. ".. ... ... ... ... \n",
  400. "176 88 56 0.170923 0 \n",
  401. "177 95 56 0.133268 6 \n",
  402. "178 73 56 0.102703 5 \n",
  403. "179 50 55 0.121086 4 \n",
  404. "180 61 57 0.112961 3 \n",
  405. "\n",
  406. "[181 rows x 10 columns]\n"
  407. ]
  408. }
  409. ],
  410. "source": [
  411. "temp = pd.DatetimeIndex(sleep_score_df['timestamp'])\n",
  412. "sleep_score_df['weekday'] = temp.weekday\n",
  413. "\n",
  414. "print(sleep_score_df)"
  415. ]
  416. },
  417. {
  418. "cell_type": "code",
  419. "execution_count": 11,
  420. "metadata": {},
  421. "outputs": [
  422. {
  423. "data": {
  424. "image/png": "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
  425. "text/plain": [
  426. "<Figure size 432x288 with 1 Axes>"
  427. ]
  428. },
  429. "metadata": {
  430. "needs_background": "light"
  431. },
  432. "output_type": "display_data"
  433. }
  434. ],
  435. "source": [
  436. "ax = plt.gca()\n",
  437. "sleep_score_df.groupby('weekday').mean().plot(kind='line', y='overall_score', ax = ax)\n",
  438. "plt.ylabel(\"Sleep Score\")\n",
  439. "plt.title(\"Sleep Scores on Varying Days of Week\")\n",
  440. "plt.show()"
  441. ]
  442. },
  443. {
  444. "cell_type": "code",
  445. "execution_count": 12,
  446. "metadata": {},
  447. "outputs": [
  448. {
  449. "data": {
  450. "image/png": "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
  451. "text/plain": [
  452. "<Figure size 432x288 with 1 Axes>"
  453. ]
  454. },
  455. "metadata": {
  456. "needs_background": "light"
  457. },
  458. "output_type": "display_data"
  459. }
  460. ],
  461. "source": [
  462. "ax = plt.gca()\n",
  463. "sleep_score_df.groupby('weekday').mean().plot(kind='line', y='resting_heart_rate', ax = ax)\n",
  464. "plt.ylabel(\"Resting heart rate (BPM)\")\n",
  465. "plt.title(\"Resting Heart Rate Varying Days of Week\")\n",
  466. "plt.show()"
  467. ]
  468. },
  469. {
  470. "cell_type": "markdown",
  471. "metadata": {},
  472. "source": [
  473. "## Calories"
  474. ]
  475. },
  476. {
  477. "cell_type": "code",
  478. "execution_count": 13,
  479. "metadata": {},
  480. "outputs": [],
  481. "source": [
  482. "calories_df = pd.read_json(\"data/calories/calories-2019-07-01.json\", convert_dates=True)"
  483. ]
  484. },
  485. {
  486. "cell_type": "code",
  487. "execution_count": 14,
  488. "metadata": {},
  489. "outputs": [
  490. {
  491. "name": "stdout",
  492. "output_type": "stream",
  493. "text": [
  494. " dateTime value\n",
  495. "0 2019-07-01 00:00:00 1.07\n",
  496. "1 2019-07-01 00:01:00 1.07\n",
  497. "2 2019-07-01 00:02:00 1.07\n",
  498. "3 2019-07-01 00:03:00 1.07\n",
  499. "4 2019-07-01 00:04:00 1.07\n",
  500. "... ... ...\n",
  501. "43195 2019-07-30 23:55:00 1.07\n",
  502. "43196 2019-07-30 23:56:00 1.07\n",
  503. "43197 2019-07-30 23:57:00 1.07\n",
  504. "43198 2019-07-30 23:58:00 1.07\n",
  505. "43199 2019-07-30 23:59:00 1.07\n",
  506. "\n",
  507. "[43200 rows x 2 columns]\n"
  508. ]
  509. }
  510. ],
  511. "source": [
  512. "print(calories_df)"
  513. ]
  514. },
  515. {
  516. "cell_type": "code",
  517. "execution_count": 15,
  518. "metadata": {},
  519. "outputs": [
  520. {
  521. "name": "stdout",
  522. "output_type": "stream",
  523. "text": [
  524. " dateTime value date_minus_time\n",
  525. "date_minus_time \n",
  526. "2019-07-01 2019-07-01 00:00:00 1.07 2019-07-01\n",
  527. "2019-07-01 2019-07-01 00:01:00 1.07 2019-07-01\n",
  528. "2019-07-01 2019-07-01 00:02:00 1.07 2019-07-01\n",
  529. "2019-07-01 2019-07-01 00:03:00 1.07 2019-07-01\n",
  530. "2019-07-01 2019-07-01 00:04:00 1.07 2019-07-01\n",
  531. "... ... ... ...\n",
  532. "2019-07-30 2019-07-30 23:55:00 1.07 2019-07-30\n",
  533. "2019-07-30 2019-07-30 23:56:00 1.07 2019-07-30\n",
  534. "2019-07-30 2019-07-30 23:57:00 1.07 2019-07-30\n",
  535. "2019-07-30 2019-07-30 23:58:00 1.07 2019-07-30\n",
  536. "2019-07-30 2019-07-30 23:59:00 1.07 2019-07-30\n",
  537. "\n",
  538. "[43200 rows x 3 columns]\n"
  539. ]
  540. }
  541. ],
  542. "source": [
  543. "import datetime\n",
  544. "calories_df['date_minus_time'] = calories_df[\"dateTime\"].apply( lambda calories_df : \n",
  545. " datetime.datetime(year=calories_df.year, month=calories_df.month, day=calories_df.day))\t\n",
  546. "calories_df.set_index(calories_df[\"date_minus_time\"],inplace=True)\n",
  547. "\n",
  548. "print(calories_df)"
  549. ]
  550. },
  551. {
  552. "cell_type": "code",
  553. "execution_count": 16,
  554. "metadata": {},
  555. "outputs": [
  556. {
  557. "name": "stdout",
  558. "output_type": "stream",
  559. "text": [
  560. " value\n",
  561. "date_minus_time \n",
  562. "2019-07-01 3422.68\n",
  563. "2019-07-02 2705.85\n",
  564. "2019-07-03 2871.73\n",
  565. "2019-07-04 4089.93\n",
  566. "2019-07-05 3917.91\n",
  567. "2019-07-06 2762.55\n",
  568. "2019-07-07 2929.58\n",
  569. "2019-07-08 2698.99\n",
  570. "2019-07-09 2833.27\n",
  571. "2019-07-10 2529.21\n",
  572. "2019-07-11 2634.25\n",
  573. "2019-07-12 2953.91\n",
  574. "2019-07-13 4247.45\n",
  575. "2019-07-14 2998.35\n",
  576. "2019-07-15 2846.18\n",
  577. "2019-07-16 3084.39\n",
  578. "2019-07-17 2331.06\n",
  579. "2019-07-18 2849.20\n",
  580. "2019-07-19 2071.63\n",
  581. "2019-07-20 2746.25\n",
  582. "2019-07-21 2562.11\n",
  583. "2019-07-22 1892.99\n",
  584. "2019-07-23 2372.89\n",
  585. "2019-07-24 2320.42\n",
  586. "2019-07-25 2140.87\n",
  587. "2019-07-26 2430.38\n",
  588. "2019-07-27 3769.04\n",
  589. "2019-07-28 2036.24\n",
  590. "2019-07-29 2814.87\n",
  591. "2019-07-30 2077.82\n"
  592. ]
  593. }
  594. ],
  595. "source": [
  596. "calories_per_day = calories_df.resample('D').sum()\n",
  597. "print(calories_per_day)"
  598. ]
  599. },
  600. {
  601. "cell_type": "code",
  602. "execution_count": 17,
  603. "metadata": {},
  604. "outputs": [
  605. {
  606. "data": {
  607. "image/png": "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
  608. "text/plain": [
  609. "<Figure size 432x288 with 1 Axes>"
  610. ]
  611. },
  612. "metadata": {
  613. "needs_background": "light"
  614. },
  615. "output_type": "display_data"
  616. }
  617. ],
  618. "source": [
  619. "ax = plt.gca()\n",
  620. "calories_per_day.plot(kind='hist', title=\"Calorie Distribution\", legend=False, ax=ax)\n",
  621. "plt.show()"
  622. ]
  623. },
  624. {
  625. "cell_type": "code",
  626. "execution_count": 18,
  627. "metadata": {},
  628. "outputs": [
  629. {
  630. "data": {
  631. "image/png": "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
  632. "text/plain": [
  633. "<Figure size 432x288 with 1 Axes>"
  634. ]
  635. },
  636. "metadata": {
  637. "needs_background": "light"
  638. },
  639. "output_type": "display_data"
  640. }
  641. ],
  642. "source": [
  643. "ax = plt.gca()\n",
  644. "calories_per_day.plot(kind='line', y='value', legend=False, title=\"Calories Per Day\", ax=ax)\n",
  645. "plt.xlabel(\"Date\")\n",
  646. "plt.ylabel(\"Calories\")\n",
  647. "plt.show()"
  648. ]
  649. },
  650. {
  651. "cell_type": "code",
  652. "execution_count": 27,
  653. "metadata": {},
  654. "outputs": [
  655. {
  656. "data": {
  657. "image/png": "iVBORw0KGgoAAAANSUhEUgAAAWAAAAEWCAYAAABYGk2QAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAAdpklEQVR4nO3deZgU9b3v8feXYZMgboALKqhE2QwuIOghkuASFB/RIypEEAJBYGbymHhPzk1CcmKuJrlJ7slN4iysguwoCbhfUUEjMgaR4Iq7oAmIy2FfFIbv/aNqOD3DzDAzdPevp/vzep5+6Knl9/tWUf3p6qruKnN3REQk/ZqELkBEJFcpgEVEAlEAi4gEogAWEQlEASwiEogCWEQkEAVwljAzN7PODZz3FjNbmuyaEtr/iZlNS2J7O83szPj5TDO7O4ltTzKznyWrvYR2zcxmmNkWM1uV7Pbr0P96M7s83f1K7RTAGcTMvm1mq+OA2WRmj5tZv1T36+5z3f3KhsxrZs+Y2V4z22Fm283sJTP7kZm1SGj/V+7+3Tq2ddjp3L21u7/fkHqr9DfKzFZUaXu8u991pG1Xox9wBXCqu1+UjAaP5E1XMoMCOEOY2R3AH4BfAScCpwMlwOAU99s0Cc0UuvvRwMnA/wCGAo+ZmSWh7YOSVGsoHYH17r6rvjM28uWW2ri7HoEfwDHATuDGWqa5CCgDtgKbgCKgecJ4BzontDcL+BTYAPwUaBKPGwU8D/xf4L+Au+NhKxLa6gI8GY9/C7iplrqeAb5bZdjpwG7gmvjvO4E58fOWwBzg83hZXiR6w/klUA7sjddFUcJyFQDvAB9Us6wzgUlxvTuAZ4GO8bhO8bRNq9YLdI37Ko/725rQ3t0J048F3o3XxUPAKVXW+fi4ti1AMWDVrKMxVfr6RR3brrTc1bRbdT0k1v0N4B8Jf68HLgdOiv9vTkgYd2G8rTQL/VrItYf2gDPDxUTBtLiWacqBHwBt4+kvA/JrmPYeohA+E+gP3Ap8J2F8H+B9oD1R8B1kZl8hCrN58fhhQImZda/rwrj7h8Bq4OvVjB4Z13YacAJRgO1x94nAc0R7063dvTBhnuvimrvV0OUtwF1E62YtMLcONa6L+y6L+zu26jRmNgD4NXAT0d79BmBBlcmuAXoDPePpvlVNX9Or9PXzOrZ9uOWuN3f/mOhN6KaEwcOBBe6+L1n9SN0ogDPDCcBn7r6/pgnc/SV3f8Hd97v7emAyUbhWYmZ5wM3Aj919RzztfwIjEibb6O73xG3tqdLENUQflWfE49cAfwaG1HOZNgLHVzN8H9Hydnb38ni5th+mrV+7+39VU2uFR939r+7+BTARuNjMTqtnvdW5BbjX3dfEbf84brtTwjT/2923xm86y4Hzktj24Za7oe4jCt2K7WUYMDvJfUgdKIAzw+dA29qO9ZnZ2Wb2iJl9bGbbiY4Vt61m0rZAc6I9qgobgA4Jf39USy0dgT5mtrXiQRQWJ9VxWSp0IPpoXdVs4AlggZltNLPfmlmzw7RVW72Vxrv7zrjfU+pTbA1OIWE9xm1/TuV1+XHC891A6yS2fbjlbqgHgW7xN0muALa5e9q/mSEK4ExRRnSM8LpapikF3gS+6u5tgJ8A1Z3k+oxoL7NjwrDTgX8m/F3bJfA+Ap5192MTHq3dfUIdlgOAeO/zQqJDCpW4+z53/4W7dwMuIdrjvvUwdR3ukn0H93bNrDXRnvdGoOKEV6uEaRPfSA7X7kYS1mN8eOYEKq/LhqpL2/W5VOEual7OStx9L3A/0RvrCLT3G4wCOAO4+zbgP4BiM7vOzFqZWTMzu8rMfhtPdjSwHdhpZl2AagPR3cuJXly/NLOjzawjcAfRia+6eAQ428xGxDU0M7PeZtb1cDPGdfcn2sNaBTxWzTTfNLNz44++24neLMrj0ZuJjlvX19Vm1s/MmhMdC/6bu3/k7p8SBdpwM8szs9HAWQnzbQZOjeerzjzgO2Z2Xvy1ul/Fba9vQI2pbnst0Xo43sxOAr5/mOlnEZ18vZa6bxuSZArgDOHuvycKyp8SnZH+CCgElsST/BvwbaIz/VOBhbU09z2iPaL3gRVEL/Z761jHDuBKoq+SbST6iP0boEUtsxWZ2Q6iQPsD0THjge5+oJppTwIWEYXvOqJvLVQEwB+BIfGPFf5Ul3pj84CfEx16uJBoz67CWOCHRB/vuwMrE8YtA14HPjazz6o26u5PAz+Ll2cTUXgPrUddNUpi2xV7ybOBl4m+7bCU2rcP3P154ACwJklvKNIA5q4Lsos0NmbWBtgGHOfuWxvYxjJgnrsn7VeKUj/6grdI43Qz8N4RhG9v4AJS/EMfqZ0CWKSRMbOVwLFEPyhpyPz3EZ3wvT0+5CSB6BCEiEggOgknIhJIvQ5BtG3b1jt16pSiUkREsk/btm154oknnnD3gVXH1SuAO3XqxOrVq5NXmYhIDjCz6n61qkMQIiKhKIBFRAJRAIuIBKIAFhEJRAEsIhKIAlhEJBAFsIhIILoWRBp8+OGHvPvuu2npq23btnzta19LS18NtXv3bl544YVKw04//XQ6d9Yd1iW3KIDT4Ac/+AFvv/027dq1S3lfa9asoaysjK5dD3v99GBuv/12ysrKaN++PQDbtm3jqKOOYsWKFYErE0kvBXAalJeXc9ddd3HddbXdcSg5fvazn1FSUsI999yT8r4aYsuWLSxatIi33nrrYACXlZVxxx13BK5MJP10DDjLjBs3jrlz57JjR2ZeZXDGjBkMGjToYPiK5DIFcJY59dRTGTBgALNnZ959Fg8cOEBJSQmFhYWhSxHJCArgLFRYWEhxcTGZdq3nJ554gmOPPZY+ffqELkUkIyiAs1D//v0xM5555pnQpVRSVFREQUEBZha6FJGMoADOQmZGQUEBRUVFoUs56L333mPVqlUMHZqUmwqLZAUFcJYaPnw4y5cv56OPPgpdCgClpaWMHj2ao446KnQpIhlDAZyljj76aIYPH87kyZNDl8Lu3buZOXMm48ePD12KSEZRAGex/Px8pk2bxhdffBG0jnnz5nHJJZdwxhlnBK1DJNMogLNYly5dOPfcc1m0aFGwGtyd4uJiCgoKgtUgkqkUwFmusLAw6Mm4lStXsmvXLq644opgNYhkKgVwlrvmmmvYuHEjL730UpD+K/Z+mzTRpiZSlV4VWS4vL48JEyZQXFyc9r43bdrE448/zsiRI9Pet0hjoADOAWPGjGHx4sV8/vnnae136tSp3HzzzRx77LFp7VeksVAA54B27dpx7bXXcu+996atz3379jF58mSdfBOphQI4RxQWFlJSUkJ5eXla+luyZAmdO3fm3HPPTUt/Io2RAjhH9O7dm3bt2vH444+npb/i4mJd9UzkMBTAOSRdX0l79dVXeeedd9JyAXqRxkwBnENuuukm1qxZwzvvvJPSfoqLixk3bhzNmjVLaT8ijZ0COIe0bNmSMWPGUFJSkrI+tm7dysKFCxk7dmzK+hDJFgrgHDN+/HhmzZrFrl27UtL+fffdx8CBAzn55JNT0r5INlEA55iOHTvy9a9/nblz5ya97QMHDujkm0g9KIBzUMXJuGTfsuipp56iVatWXHLJJUltVyRbKYBz0GWXXcaXX37JihUrktpuUVERhYWFuuWQSB0pgHNQKm5ZtH79elauXMm3v/3tpLUpku0UwDlq5MiRPPnkk2zcuDEp7ZWWljJy5EhatWqVlPZEcoECOEe1adOGoUOHMmXKlCNua8+ePdx7771MmDAhCZWJ5A4FcA4rKChgypQpfPnll0fUzsKFC+nduzedO3dOUmUiuUEBnMO6d+/OOeecw+LFixvchrsfPPkmIvWjAM5xR3p9iFWrVrFlyxYGDhyYxKpEcoMCOMcNHjyYDz74gJdffrlB8xcVFZGfn69bDok0gF41Oa5p06aMHz++Qbcs+uSTT3jkkUf4zne+k4LKRLKfAlgYO3YsDzzwAFu2bKnXfNOmTeOGG27g+OOPT1FlItlNASyceOKJXH311cycObPO8+zfv5/S0lLdckjkCCiABYh
  658. "text/plain": [
  659. "<Figure size 432x288 with 1 Axes>"
  660. ]
  661. },
  662. "metadata": {
  663. "needs_background": "light"
  664. },
  665. "output_type": "display_data"
  666. }
  667. ],
  668. "source": [
  669. "ax = plt.gca()\n",
  670. "ax.set_title('Calorie Distribution for July')\n",
  671. "ax.boxplot(calories_per_day['value'], vert=False,manage_ticks=False, notch=True)\n",
  672. "plt.xlabel(\"Calories Burned\")\n",
  673. "ax.set_yticks([])\n",
  674. "plt.show()"
  675. ]
  676. }
  677. ],
  678. "metadata": {
  679. "kernelspec": {
  680. "display_name": "Python 3",
  681. "language": "python",
  682. "name": "python3"
  683. },
  684. "language_info": {
  685. "codemirror_mode": {
  686. "name": "ipython",
  687. "version": 3
  688. },
  689. "file_extension": ".py",
  690. "mimetype": "text/x-python",
  691. "name": "python",
  692. "nbconvert_exporter": "python",
  693. "pygments_lexer": "ipython3",
  694. "version": "3.7.6"
  695. }
  696. },
  697. "nbformat": 4,
  698. "nbformat_minor": 4
  699. }