Skip to content

Instantly share code, notes, and snippets.

@pfsq
Last active March 28, 2016 17:34
Show Gist options
  • Save pfsq/a20c436ec2fc475b340c to your computer and use it in GitHub Desktop.
Save pfsq/a20c436ec2fc475b340c to your computer and use it in GitHub Desktop.
SimScale's F1 Aerodynamic Workshop data post-processing.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The results shown herein come from the data post-processing of the SimScale's F1 Aerodynamics Workshop. You can access the public project [here](https://www.simscale.com/workbench?publiclink=e5e180ab-7ea1-419e-a354-eef21a1591fa).\n",
"\n",
"Five simulations were carried out at speeds ranging from 40 to 80 m/s. Simulations were stopped when reaching a scaled residual of 0.001 for pressure and 0.0001 for the rest. Then, the last 20 iterations were averaged and the results stored in an Excel file which is now loaded into this [Jupyter Notebook](http://jupyter.org/)."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"import pandas as pd\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"plt.style.use('bmh')\n",
"%matplotlib inline"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Drag Pressure</th>\n",
" <th>Drag Viscous</th>\n",
" <th>Drag Porous</th>\n",
" <th>Drag</th>\n",
" <th>Lift Pressure</th>\n",
" <th>Lift Viscous</th>\n",
" <th>Lift Porous</th>\n",
" <th>Lift</th>\n",
" <th>Downforce</th>\n",
" </tr>\n",
" <tr>\n",
" <th>Velocity</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>40</th>\n",
" <td>81.355206</td>\n",
" <td>4.857429</td>\n",
" <td>0</td>\n",
" <td>86.212635</td>\n",
" <td>-218.339635</td>\n",
" <td>-0.242678</td>\n",
" <td>0</td>\n",
" <td>-218.582313</td>\n",
" <td>218.582313</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50</th>\n",
" <td>127.300117</td>\n",
" <td>7.093351</td>\n",
" <td>0</td>\n",
" <td>134.393468</td>\n",
" <td>-339.619453</td>\n",
" <td>-0.366263</td>\n",
" <td>0</td>\n",
" <td>-339.985715</td>\n",
" <td>339.985715</td>\n",
" </tr>\n",
" <tr>\n",
" <th>60</th>\n",
" <td>183.372194</td>\n",
" <td>9.782826</td>\n",
" <td>0</td>\n",
" <td>193.155020</td>\n",
" <td>-487.971367</td>\n",
" <td>-0.509247</td>\n",
" <td>0</td>\n",
" <td>-488.480614</td>\n",
" <td>488.480614</td>\n",
" </tr>\n",
" <tr>\n",
" <th>70</th>\n",
" <td>249.684952</td>\n",
" <td>12.965474</td>\n",
" <td>0</td>\n",
" <td>262.650426</td>\n",
" <td>-663.799507</td>\n",
" <td>-0.668660</td>\n",
" <td>0</td>\n",
" <td>-664.468168</td>\n",
" <td>664.468168</td>\n",
" </tr>\n",
" <tr>\n",
" <th>80</th>\n",
" <td>325.100258</td>\n",
" <td>16.617850</td>\n",
" <td>0</td>\n",
" <td>341.718109</td>\n",
" <td>-865.017034</td>\n",
" <td>-0.845209</td>\n",
" <td>0</td>\n",
" <td>-865.862243</td>\n",
" <td>865.862243</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Drag Pressure Drag Viscous Drag Porous Drag \\\n",
"Velocity \n",
"40 81.355206 4.857429 0 86.212635 \n",
"50 127.300117 7.093351 0 134.393468 \n",
"60 183.372194 9.782826 0 193.155020 \n",
"70 249.684952 12.965474 0 262.650426 \n",
"80 325.100258 16.617850 0 341.718109 \n",
"\n",
" Lift Pressure Lift Viscous Lift Porous Lift Downforce \n",
"Velocity \n",
"40 -218.339635 -0.242678 0 -218.582313 218.582313 \n",
"50 -339.619453 -0.366263 0 -339.985715 339.985715 \n",
"60 -487.971367 -0.509247 0 -488.480614 488.480614 \n",
"70 -663.799507 -0.668660 0 -664.468168 664.468168 \n",
"80 -865.017034 -0.845209 0 -865.862243 865.862243 "
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"fw_data = pd.read_excel('FrontWing.xlsx', sheetname='Data', index_col=0)\n",
"fw_data"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Results are for half wing, so we multiply the resulting drag and downforce by 2 in order to obtain the forces of a whole wing. That would not be necessary if knew the frontal area of the wing and wanted only the coefficients $C_{D,L}$."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"fw_data.Drag = 2*fw_data.Drag\n",
"fw_data.Downforce = 2*fw_data.Downforce"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Curve fitting\n",
"\n",
"The drag and lift forces are given by\n",
"\n",
"$$ D = \\frac{1}{2} \\rho_\\infty C_D A V_\\infty^2 $$\n",
"$$ L = \\frac{1}{2} \\rho_\\infty C_L A V_\\infty^2 $$\n",
"\n",
"where $\\rho$ is the air density, $C_{D,L}$ are the drag and lift coefficients, $A$ is the frontal area of the object, and $V$ is the velocity of the object.\n",
"\n",
"For each of the forces above we have two unknowns, the coefficient $C_{D,L}$ and the frontal area $A$. The product of both unknowns is known as *drag area*, and downforce area. We will use an algorithm ([`curve_fit`](http://docs.scipy.org/doc/scipy-0.16.1/reference/generated/scipy.optimize.curve_fit.html)) to fit the aforementioned function through least squares to get the most representative drag area of the front wing."
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"from scipy.optimize import curve_fit"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The algorithm requires a model function that must take an independent variable (velocity) as the first argument and the parameter to fit (drag area) as separate remaining arguments. Our model function is the `forceFunc` defined below:"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"def forceFunc(V, CxA):\n",
" rho = 1.19198\n",
" return 0.5*rho*CxA*V*V"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The algorithm returns the optimal value for drag and downforce area as well as the estimated [covariance](https://en.wikipedia.org/wiki/Covariance)."
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"CdA: 0.1796 with sigma: 2.37E-04\n"
]
}
],
"source": [
"CdA, CdACovariances = curve_fit(forceFunc, fw_data.index.values, fw_data.Drag.values)\n",
"print('CdA: {:.4f} with sigma: {:.2E}'.format(CdA[0], np.sqrt(np.diag(CdACovariances))[0]))"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"ClA: 0.4548 with sigma: 4.82E-04\n"
]
}
],
"source": [
"ClA, ClACovariances = curve_fit(forceFunc, fw_data.index.values, fw_data.Downforce.values)\n",
"print('ClA: {:.4f} with sigma: {:.2E}'.format(ClA[0], np.sqrt(np.diag(ClACovariances))[0]))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can see that the deviations are very low. This is one of the reasons why you may pick one representative velocity —generally the cruise speed— and compare results —in terms of coefficients— against wind tunnel experiments or even other vehicles."
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\n5XGMwtLT09m2bRtjxowhNDSU5s2b4+TkRL9+/XjjjTe4dOkSSUlJLFq0iNDQUMvzOnfuzJIlSyyX\nPK9sFx6vVpySZgbfyDmLGjp0KAsXLrRMWoiLi+PEiRO0a9eOmjVrMn/+fLKyssjPz+fQoUMlXtp8\n7bXXOHToEPn5+aSnp7Ns2TL8/PwslyRvdjZzVFQUK1eutPToHT16lK1bt9KhQwcAhgwZwqxZs4iN\njQUgJiaGtLQ00tPTcXFxoV69euTk5PDWW29x6dKlYs/x+OOPs23bNr799lsKCgrIyspi586dV/VI\nCvvkqONmKgNHy93F34+yJ+QZ9o+azuX4k9Ro6kO71fNov/ZtuyzUHC1/V0jPWiEGo5HXPry15THK\n4xiDBw/G2dkZJycnmjVrxqRJkxgxYoTl8dmzZ/Piiy8SGBiIm5sbw4cP58knn7Q8HhQUxMaNG+nU\nqRNgKtbee++9Uou1wr1jRXvKSjtnUX379iUtLY2xY8eSnJyMwWDggw8+wMvLi7Vr1/Lyyy9zzz33\nkJOTQ5MmTZgxY0axx8nMzGTYsGGkpqZSrVo12rVrd9XEhuvFfD21a9dm69atzJo1i8uXL+Ph4cFj\njz3GM888A8DTTz9Nbm4uISEhnD9/nqZNm/Lxxx8THBzMgw8+SIcOHahZsybjx48vcakPT09PVq1a\nxauvvsqYMWNwcXEhMDCQuXPn3nCcQghxM7JPn+PY7MWcWPslaI1r3Vo0mTIG76F9cXKVX/32pkLX\nWatoZV1nTQhrkn+XQohblZ+VTfziT4h917xemoszhtEDaPL8SFzr1LJ2eKIUJa2zJuW1EEIIYee0\n1qR8toMjb7xP1okUAO54qAvNX51EjbsMpTxb2DoZsyaEEGXkqONmKoPKmLu0vQeI6j2WX8f/i6wT\nKdRscRft171rWi+tkhVqlTF/N0J61oQQQgg7dDkxmaMz3yflsx0AVLmjHk2njcXriUdR5XTLP2Eb\npFgTQogyctS1niqDypC7vPQM/nh3BQlL1lGQnYOTWxV8xg/Cb9IQXGrWsHZ4t1VlyN/NkGJNCCGE\nsAMFeXmcWPMlx8MWk3POtNZko5CH8J8+nmpeDa0cnbidZMyaEEKUkaOOm6kM7DF3WmvO7NjNruDh\nxEx9i5xzf1Ln3jZ03LKUgPf+7VCFmj3mrzxIz5oQQghhoy4ePMaR1xZy7oc9AFQzNKbZKxNp0PuB\n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\nREREJI79f0tP4BD6B26BAAAAAElFTkSuQmCC\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f1df9b4fa20>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig = plt.figure(figsize=(10,5))\n",
"ax = plt.subplot(111)\n",
"\n",
"fw_data.plot(y=['Drag', 'Downforce'], ax=ax, style='o', xlim=[35, 85])\n",
"\n",
"plt.gca().set_prop_cycle(None)\n",
"Velocity = np.linspace(40, 80)\n",
"ax.plot(Velocity, forceFunc(Velocity, CdA),\n",
" Velocity, forceFunc(Velocity, ClA))\n",
"\n",
"ax.legend(['Drag SimScale', 'Downforce SimScale', 'Drag fit', 'Downforce fit'], loc=2)\n",
"\n",
"ax.set_title('F1 Front Wing')\n",
"ax.set_xlabel('Velocity (m/s)')\n",
"ax.set_ylabel('Force (N)')\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"The plot proves that by knowing the drag or downforce coefficient at one speed, we can estimate the aerodynamic forces at any other speed —provided that the Reynolds number remains within a [certain range](http://www.grc.nasa.gov/WWW/k-12/airplane/dragsphere.html).\n",
"\n",
"## Pressure vs shear drag\n",
"\n",
"Another thing we can learn from the data is the relative contribution that pressure and shear stress have towards drag. This comparison allows us to categorise the geometry as blunt body —most of the drag is pressure drag— or streamlined body —most of the drag is skin friction drag.\n",
"\n",
"The following table shows the contribution (as %) of pressure and shear stress toward drag at different speeds. "
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Drag Pressure</th>\n",
" <th>Drag Viscous</th>\n",
" </tr>\n",
" <tr>\n",
" <th>Velocity</th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>40</th>\n",
" <td>94.365758</td>\n",
" <td>5.634242</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50</th>\n",
" <td>94.721952</td>\n",
" <td>5.278048</td>\n",
" </tr>\n",
" <tr>\n",
" <th>60</th>\n",
" <td>94.935246</td>\n",
" <td>5.064754</td>\n",
" </tr>\n",
" <tr>\n",
" <th>70</th>\n",
" <td>95.063601</td>\n",
" <td>4.936399</td>\n",
" </tr>\n",
" <tr>\n",
" <th>80</th>\n",
" <td>95.136971</td>\n",
" <td>4.863029</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Drag Pressure Drag Viscous\n",
"Velocity \n",
"40 94.365758 5.634242\n",
"50 94.721952 5.278048\n",
"60 94.935246 5.064754\n",
"70 95.063601 4.936399\n",
"80 95.136971 4.863029"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"drag_data = fw_data[['Drag Pressure', 'Drag Viscous']].divide(0.5*fw_data.Drag, axis='index') * 100\n",
"drag_data"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The relative contribution of skin friction drag decreases with increasing speed; or in other words, $C_f$ decreases as Re increases."
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\ncsyGcsxGZdZZIKeUTs3s+mTm9v8E/FNXFrUl2ik2tNtFmzuzoRyzoRyzoRyzURk/Sa8gPrZV31ov\nQQVlNpRjNpRjNpRjNipjgVwQw3tsX+slqKDMhnLMhnLMhnLMRmU8z14Qc1uWG1p1ymwox2wox2y0\nl1Li1VdfZfXq1TVbw6pddmCPa75Zs/nXWJFW0zu2qvUyeHOXHVi5cGHV59lqq63o378/6/vBzhbI\nkiRps/bqq6/Sp08fevfuXbtFDAT236d282+hVqxYwauvvsruu+++XvezxaIgfKWvHLOhHLOhHLPR\n3urVq2tbHKtmevfuvUF/ObBAliRJkspYIBfE3JbltV6CCspsKMdsKMdsSF1jgSxJkiSV8U16BWG/\nmHLMhnLMhnLMxrq9vHQlr775TtWO33+HrfnAjtus83YjR45k8eLF9OzZk6222op9992X8ePHc9pp\np633lRc21FlnncW0adPYeuut2XrrrTnooIOYMGECe++990aZv4gskCVJ0hbn1Tff4cJb5lft+FeM\nG1ZRgRwRTJkyhbFjx7Js2TLuu+8+Lr74Yh566CGuvvrqTu/T0tJCjx7d2wRw7rnncskll/D2229z\n3nnncfbZZzN9+vT33G716tVstVVtLxOXUqr6iwdbLArCfjHlmA3lmA3lmI1NS0oJgD59+nDUUUdx\n3XXXMWXKFObNmwe0nuG94IILGD9+PHV1dTQ2NjJjxgyOOOIIBg8e3HbGt9yUKVMYOXIke++9N1de\neSWjRo3innvuWedatt12W0466SSeeOIJACZMmMAXv/hFzjzzTPbcc09uuOEGUkr867/+Kx/+8IfZ\ne++9Of3003njjTcAWLlyJWeeeSbDhg1jyJAhfPKTn2Tx4sUATJ48mfr6eurq6qivr2fatGltc5x5\n5plta3jhhRfo168fLS0tABx77LFcdtllHHPMMeyxxx4899xzLF26lHPOOYfhw4dz4IEHctlll7U9\njt3BAlmSJKlA6uvrGThwIPfff3/btmnTpnHBBRfw/PPPc8ghh7D99tvzwx/+kOeee44pU6bwn//5\nn9x6660AzJs3j4suuoif/OQnPPHEEyxdupRFixZVNPebb77JTTfdxMiRI9u23XbbbRx//PE8++yz\nfPazn+Xf//3fufXWW/nd737H3Llz2WmnnbjgggsAuOGGG1i2bBmPP/44Tz/9NP/yL//Ctttuy4oV\n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\n3JOf/exnLFmyBIBFixYxaNDa/uftttuOXXbZJTvXdtttx7HHHtvWZnHTTTe1tVd0NHbsWL785S9z\n0UUXse+++/J3f/d3vPnmm7z++uusXLmyrcgtt2jRonb9zRHBoEGDePnll9f5OJxzzjnsueeenHji\niXz4wx9m4sSJ67xPd+hSgZxSOjyldGBK6UMppbtK2/6QUvpIadtHU0oPd8tKJUmStgBNTU0sWrSI\nQw45pG1bxzaEr3zlK4wbN47HH3+cZ599ltNOO62tl3n33Xdn4cKFbbd966232ornnFNOOYVf/epX\n/P73v2f58uUcddRR2dueccYZ3HnnncyaNYv58+fzgx/8gH79+rHNNtu06yVeY8CAAbzwwgvttr30\n0kttRX/v3r1ZsWJF275XX3217fsddtiB73znOzQ1NXH99ddz7bXXcu+9977vz9Id/CS9gvCalcox\nG8oxG8oxG5umZcuWMX36dM444wxOPvnk972CxPLly9lpp53o1asXc+bMYdq0aW37jj32WG677TYe\nfPBBVq1a9Z438HXmox/9KDvuuCNf//rX+cxnPkPPnp2/Te3hhx9mzpw5vPvuu2y77bZss8029OjR\ng4jg85//PN/85jdZtGgRLS0tbfMff/zxzJgxg3vvvZd3332XH/zgB2y77baMHt3agTtixAimTZtG\nS0sLd9xxB/fdd1/bfLfffjvPPPMM0Fos9+zZs9uu4PF+LJAlSZJq6NRTT227GsX3v/99zj777HaX\neOvsTWxXXHEFl19+OYMHD+aqq67ihBNOaNu33377MWHCBE4//XSGDx9Onz592HXXXdl6663fdx3j\nx4/nxRdfZPz48dnbLFu2jL/9279l6NChfOhDH6Jfv36cc845AFx66aUMHz6choYG9tprLy699FJa\nWloYNmwYP/rRj7jooovYe++9mTFjBpMnT24rwi+//HJuvfVWhgwZws0338ynPvWptvkWLFjACSec\nQF1dHccccwynn346hx12WGUPbBd06U16XeGb9IqpKG+oKAKz0Z7ZWMtstGc21jIb7RUlG529Saso\nHxSyMSxfvpwhQ4YwZ86cdr3AW4oNeZNely7zJkmStCnafs9BhSlgq2H69OkcfvjhtLS08O1vf5sD\nDjhgiyyON5QtFgVhv5hyzIZyzIZyzIZuueUWhg8fzoEHHsgzzzzDpEmTar2kTYpnkCVJkjYzEydO\n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\nQ5IkSdpoIqXUtQNEDAZ+m1I6qDSeB3wspfRKRAwA7kop7df1pUqSJEnVV40e5P4ppVcAUkqLgP5V\nmEOSJEmqip4bYY5OT1F/9atfTX/+85+pq6sDoG/fvowYMYIxY8YA0NjYCFD1cZ+hI7nwlvksXdAM\nwI57jQLYYsf/fs5JjBzYZ6M9/kUeL1i8gusX79atj++mPP7qXwzitOOP7LbHd1Me/+xXt/PDB14q\n1PNTy/Hnd32NvXbtXZjnp5bjRxYu43//YGq3Pr6b8viKccNY9vQj3fb4bspj643241rUG42NjUye\nPBmAuro6+vfvz/nnnx90ohotFk8AR5S1WPw+pbR/x/vNnDkz1dfXd2nu7vDIwmVceMv8Wi+jMK4Y\nN4yRA/vUehmFYDbaMxtrmY32zMZaZqM9s7GW2WivCNloamqioaGh0wK5O1osovS1xm+AL5a+Pw34\ndTfMsdlb84pK6shsKMdsKMdsKMdsVKarl3mbDNwH7BMRz0fEl4DvAf8rIv4INJTGkiRJ0iahSz3I\nKaVTM7s+2ZXjbonW9OZIHZkN5ZgN5ZgN5ZiNyvhJepIkSVIZC+SCsCdIOWZDOWZDOWZDOWajMhbI\nkiRJUhkL5IKwJ0g5ZkM5ZkM5ZkM5ZqMyFsiSJElSGQvkgrAnSDlmQzlmQzlmQzlmozIWyJIkSVIZ\nC+SCsCdIOWZDOWZDOWZDOWajMhbIkiRJUhkL5IKwJ0g5ZkM5ZkM5ZkM5ZqMyFsiSJElSGQvkgrAn\nSDlmQzlmQzlmQzlmozIWyJIkSVIZC+SCsCdIOWZDOWZDOWZDOWajMhbIkiRJUhkL5IKwJ0g5ZkM5\nZkM5ZkM5ZqMyFsiSJElSGQvkgrAnSDlmQzlmQzlmQzlmozIWyJIkSVIZC+SCsCdIOWZDOWZDOWZD\nOWajMhbIkiRJUhkL5IKwJ0g5ZkM5ZkM5ZkM5ZqMyFsiSJElSGQvkgrAnSDlmQzlmQzlmQzlmozIW\nyJIkSVKZqhXIEfH1iHgsIv4nIq6PiK2rNdfmwJ4g5ZgN5ZgN5ZgN5ZiNylSlQI6IgcA5QH1K6SCg\nJ/C5aswlSZIkdaeeVTz2VsD2EdEC9AYWVnGuTZ49QcoxG8oxG8oxG8oxG5WpyhnklNJC4CrgeeAl\n4M8ppTuqMZckSZLUnarVYrETcBwwGBgI7BARp1Zjrs2FPUHKMRvKMRvKMRvKMRuVqVaLxSeBp1NK\n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\nAABJRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f1df706c048>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig = plt.figure(figsize=(10,6))\n",
"ax1 = plt.subplot(211)\n",
"ax2 = plt.subplot(212, sharex=ax1)\n",
"\n",
"drag_data.plot(ax=ax1, kind='bar', stacked=True, ylim=[90, 100])\n",
"drag_data.plot(ax=ax2, kind='bar', stacked=True, ylim=[0, 10], legend=False)\n",
"\n",
"ax1.spines['bottom'].set_visible(False)\n",
"ax2.spines['top'].set_visible(False)\n",
"ax1.xaxis.tick_top()\n",
"ax1.tick_params(labeltop='off') # don't put tick labels at the top\n",
"ax2.xaxis.tick_bottom()\n",
"\n",
"ax1.set_title('F1 Front Wing')\n",
"ax2.set_xlabel('Velocity (m/s)')\n",
"\n",
"plt.tight_layout()"
]
}
],
"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.4.4"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment