Skip to content
Permalink
52ea077c3a
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
executable file 548 lines (548 sloc) 115 KB
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Computational Mechanics Project #02 - Create specifications for a projectile robot\n",
"\n",
"On the first day of class, we threw $2\"\\times~2\"$ dampened paper (spitballs) at a target on the whiteboard. Now, we are going to analyze the accuracy of the class with some cool Python tools and design a robot that has the same accuracy and precision as the class, but we will have the robot move farther away from the target and use a simpler projectile i.e. a tennis ball so we don't need to worry about knuckle-ball physics. \n",
"\n",
"The goal of this project is to determine the precision of necessary components for a robot that can reproduce the class throwing distibution. We have generated pseudo random numbers using `numpy.random`, but the class target practice is an example of truly random distributions. If we repeated the exercise, there is a vanishingly small probability that we would hit the same points on the target, and there are no deterministic models that could take into account all of the factors that affected each hit on the board. \n",
"\n",
"<img src=\"../images/robot_design.png\" style=\"height: 250px;\"/>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Now, we ask ourselves some questions:\n",
"\n",
"1. How do we quantify the class accuracy and precision?\n",
"\n",
"2. If we design a robot, what design components can we control?\n",
"\n",
"3. How can we relate the controlled components to the class accuracy, and specify the component precision?\n",
"\n",
"The first question, we have some experience from our work in [02_Seeing_Stats](../notebooks/02_Seeing_Stats.ipynb). We can define the mean, standard deviation, measure the first, second, and third quartiles, etc. \n",
"\n",
"The second question is a physical question. We cannot control the placement of the robot or the target those are chosen for us. We cannot control temperature, mechanical vibrations, etc. We *can* control the desired initial velocity. The initial velocity will have some speed and direction, and both will be subject to random noise. Once the speed and direction are set, the location on the target is determined by kinematic equations for an object in freefall, as such\n",
"\n",
"$x_{impact} = \\frac{v_x}{v_y}d + x(0)~~~~~~~~~~~~~~~~~~~~(1.a)$\n",
"\n",
"$z_{impact} = d\\left(\\frac{v_z(0)}{v_y}-\\frac{g}{2v_y^2}d\\right)+ z(0)~~~~~(1.b)$.\n",
"\n",
"Where the location of impact is at a $y$-distance of $d$ at a point on the target with coordinates $(x_{impact},~z_{impact})$, and the initial velocity is $\\bar{v}=v_x\\hat{i}+v_y\\hat{j}+v_z(0)\\hat{k}$, the object is released at an initial location $\\bar{r}(0)=x(0)\\hat{i}+0\\hat{j}+z(0)\\hat{k}$, and the only acceleration is due to gravity, $\\bar{a}=-g\\hat{k}$. Equation (1) becomes much easier to evaluate if we assume that $v_x=0$, resulting in an evalution of the accuracy of the height of the impact, $z_{impact}$, as such\n",
"\n",
"$x_{impact} = x(0)~~~~~~~~~~~~~~~~~~~~(2.a)$\n",
"\n",
"$z_{impact} = \\frac{d}{\\cos{\\theta}}\\left(\\sin{\\theta}-\\frac{g}{2v_0^2\\cos{\\theta}}d\\right)+ z(0)~~~~~(2.b)$.\n",
"\n",
"Where $\\theta$ is the angle of the initial velocity and $v_0$ is the initial speed. Equation (2) restricts the analysis to height accuracy. You can incorporate the 2D impact analysis if you finish the 1D analysis. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The third question, is how we can relate equation (2) to the measured points of impact? For this, we can use Monte Carlo methods *(There are other methods, but Monte Carlo is one of the most straight-forward)*. Our Monte Carlo approach is as such, if we have a desired initial speed, $v_0$, and desired angle, $\\theta$, we can propagate the uncertainty of our actual speeds and angles into the $z_{impact}$ locations. Then, we can choose distributions in speed and angles that match the distributions in $z_{impact}$ locations. Here are the steps:\n",
"\n",
"1. Generate random $\\theta_i$ and $v_{0~i}$ variables\n",
"\n",
"2. Plug into eqn 2 for random $z_{impact~i}$ locations\n",
"\n",
"3. Compare to our measured $z_{impact}$ location statistics\n",
"\n",
"4. Repeat 1-3 until the predicted uncertainty matches the desired uncertainty, we can use a number of comparison metrics:\n",
" \n",
" - standard deviation\n",
" \n",
" - first, second, and third quartiles\n",
" \n",
" - visually, with box plots and histograms"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Project Deliverables\n",
"\n",
"1. Statistical analysis of class accuracy and precision (x- and z-locations) data is in the csv file [../data/target_data.csv](../data/target_data.csv) _Note: if you want to see how I turned the images into data check out the jupyter notebook [process_target_practice](./process_target_practice.ipynb)\n",
"\n",
"2. A Monte Carlo model to generate impact heights based upon uncertainty in $\\theta_0$ and $v_0$. \n",
"\n",
"3. The precision required to recreate the class accuracy and precision with a robot. \n",
"**You must show some validation of your work**\n",
"\n",
"4. [BONUS] Repeat 2-3 taking into account the variation in $x_{impact}$ due to misalignment. \n",
"\n",
"Given constants and constraints:\n",
"\n",
"- $d=$3 m, distance to target\n",
"\n",
"- $g=$9.81 m/s$^2$, acceleration due to gravity\n",
"\n",
"- $z(0)=$0.3 m, the initial height is 0.3 m above the bull's eye\n",
"\n",
"- 4 m/s$<v_0<$12 m/s, the initial velocity is always higher than 9 mph and less than 27 mph"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"import pandas as pd\n",
"\n",
"#Import rcParams to set font styles\n",
"from matplotlib import rcParams\n",
"\n",
"#Set font style and size \n",
"rcParams['font.family'] = 'sans'\n",
"rcParams['font.size'] = 16\n",
"rcParams['lines.linewidth'] = 3\n",
"\n",
"#Import data \n",
"data = pd.read_csv('../project/Cooper_data/target_data.csv')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Actual Throws"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"The x-position mean is: 0.01207963411779779 and the y-position mean is: -0.047397370492807414\n",
"The x-position std is: 0.25716367278418045 and the y-position std is: 0.2548611138551949\n"
]
}
],
"source": [
"x_position = data[\" x position (m)\"]\n",
"y_position = data[\" y position (m)\"]\n",
"\n",
"x_mean = np.mean(x_position)\n",
"y_mean = np.mean(y_position)\n",
"print(\"The x-position mean is:\", x_mean, \"and the y-position mean is:\", y_mean)\n",
"\n",
"x_std = np.std(x_position)\n",
"y_std = np.std(y_position)\n",
"print(\"The x-position std is:\", x_std, \"and the y-position std is:\", y_std)\n"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"The first quartile for the x-position is -0.16854\n",
"The second quartile for the x-position is 0.02845\n",
"The third quartile for the x-position is 0.16709\n"
]
},
{
"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": [
"quartiles_xpos = np.percentile(x_position, q =[25,50,75])\n",
"print('The first quartile for the x-position is {:.5f}'.format(quartiles_xpos[0]))\n",
"print('The second quartile for the x-position is {:.5f}'.format(quartiles_xpos[1]))\n",
"print('The third quartile for the x-position is {:.5f}'.format(quartiles_xpos[2]))\n",
"\n",
"plt.title(\"Horizontal Position (m)\")\n",
"plt.boxplot(x_position, labels = [\"x-position (m)\"], vert=False);"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"The first quartile for the y-position is -0.21785\n",
"The second quartile for the y-position is -0.07085\n",
"The third quartile for the y-position is 0.13222\n"
]
},
{
"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": [
"quartiles_ypos = np.percentile(y_position, q =[25,50,75])\n",
"print('The first quartile for the y-position is {:.5f}'.format(quartiles_ypos[0]))\n",
"print('The second quartile for the y-position is {:.5f}'.format(quartiles_ypos[1]))\n",
"print('The third quartile for the y-position is {:.5f}'.format(quartiles_ypos[2]))\n",
"\n",
"plt.title(\"Vertical Position (m)\")\n",
"plt.boxplot(y_position, labels = [\"y-position (m)\"]);"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x432 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(6,6))\n",
"plt.scatter(x_position, y_position, color='#3498db') \n",
"plt.scatter(np.mean(x_position), np.mean(y_position), color=\"red\", label = \"Mean\")\n",
"plt.axvline(color=\"black\", lw=0.5)\n",
"plt.axhline(color=\"black\", lw=0.5)\n",
"\n",
"plt.legend(loc = 'best')\n",
"plt.xlabel(\"X-Position (m)\")\n",
"plt.ylabel(\"Y-Position (m)\")\n",
"plt.title('X and Y Position of Throws');"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Robot"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [],
"source": [
"#Given constants/constraints\n",
"\n",
"d = 3 #distance to targert (meters)\n",
"g = 9.81 #acceleration due to gravity (m/s^2)\n",
"z_0 = 0.3 #initial height above the bull's eye (meters)\n",
"N = 54\n",
"zeros = np.zeros(N)\n",
"v_0 = 10\n",
"v_1 = 12"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"The mean is: -0.010127409140404976\n",
"The std is: 0.22161653514535817\n",
"\n",
"The 1st quartile for the z_impact is: -0.20805\n",
"The 2nd quartile for the z_impact is: 0.02130\n",
"The 3rd quartile for the z_impact is: 0.16510\n"
]
}
],
"source": [
"#z-impact \n",
"#-7.0 < θz < 7.0\n",
"theta_1 = 7*np.pi/180*-1\n",
"theta_2 = 7*np.pi/180\n",
"\n",
"v_i = np.random.rand(N)\n",
"th = np.random.rand(N)\n",
" \n",
"v_initial = v_0 + (v_1-v_0)*v_i\n",
"theta = theta_1 + (theta_2-theta_1)*th\n",
" \n",
"z_impact = ((d/np.cos(theta))*(np.sin(theta) - ((g*d)/(2*(v_initial**2)*np.cos(theta))))) + z_0\n",
"\n",
"z_mean = np.mean(z_impact)\n",
"z_std = np.std(z_impact)\n",
" \n",
"quartiles_zimpact = np.percentile(z_impact, q =[25,50,75])\n",
"quartile_1 = quartiles_zimpact[0]\n",
"quartile_2 = quartiles_zimpact[1]\n",
"quartile_3 = quartiles_zimpact[2]\n",
"\n",
"print(\"The mean is:\", z_mean)\n",
"print(\"The std is:\", z_std)\n",
"print()\n",
"print('The 1st quartile for the z_impact is: {:.5f}'.format(quartile_1))\n",
"print('The 2nd quartile for the z_impact is: {:.5f}'.format(quartile_2))\n",
"print('The 3rd quartile for the z_impact is: {:.5f}'.format(quartile_3))"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Actual: Q1 = -0.21785, Q2 = -0.07085, Q3 = 0.13222\n",
"Robot: Q1 = -0.22629, Q2 = -0.08923, Q3 = 0.10359\n",
"\n",
"Actual: Average = -0.04740 -- Std. Dev = 0.25486\n",
"Robot: Average = -0.07132 -- Std. Dev = 0.19698\n"
]
}
],
"source": [
"#comparison in z-direction\n",
"print('Actual: Q1 = {:1.5f}, Q2 = {:1.5f}, Q3 = {:1.5f}'.format(quartiles_ypos[0], quartiles_ypos[1], quartiles_ypos[2]))\n",
"print('Robot: Q1 = {:1.5f}, Q2 = {:1.5f}, Q3 = {:1.5f}'.format(quartile_1, quartile_2, quartile_3))\n",
"print()\n",
"print('Actual: Average = {:1.5f} -- Std. Dev = {:1.5f}'.format(y_mean, y_std))\n",
"print('Robot: Average = {:1.5f} -- Std. Dev = {:1.5f}'.format(z_mean, z_std))"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"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": [
"data = [y_position, z_impact]\n",
"fig, ax = plt.subplots();\n",
"ax.boxplot(data, labels = ('Actual','Robot'));\n",
"plt.title('Boxplots of Actual and Robot Throw Locations (z)');"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Bonus (x -position)"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"The mean is: 0.01207963411779779\n",
"The std is: 0.25716367278418045\n",
"\n",
"The 1st quartile for the z_impact is: -0.19084\n",
"The 2nd quartile for the z_impact is: 0.09503\n",
"The 3rd quartile for the z_impact is: 0.31844\n"
]
}
],
"source": [
"#x-impact\n",
"#-9.0 < θx < 9.0\n",
"theta_3 = 9*np.pi/180*-1 \n",
"theta_4 = 9*np.pi/180\n",
"theta_x = theta_3 + (theta_4-theta_3)*th\n",
"\n",
"v_initial_x = v_initial*np.sin(theta_x)\n",
"v_initial_y = v_initial*np.cos(theta)*np.cos(theta_x)\n",
"x_impact = v_initial_x / v_initial_y * d\n",
"\n",
"x_mean1 = np.mean(x_impact)\n",
"x_std1 = np.std(x_impact)\n",
" \n",
"quartiles_ximpact = np.percentile(x_impact, q =[25,50,75])\n",
"quartile_1x = quartiles_ximpact[0]\n",
"quartile_2x = quartiles_ximpact[1]\n",
"quartile_3x = quartiles_ximpact[2]\n",
"\n",
"\n",
"print(\"The mean is:\", x_mean)\n",
"print(\"The std is:\", x_std)\n",
"print()\n",
"print('The 1st quartile for the z_impact is: {:.5f}'.format(quartile_1x))\n",
"print('The 2nd quartile for the z_impact is: {:.5f}'.format(quartile_2x))\n",
"print('The 3rd quartile for the z_impact is: {:.5f}'.format(quartile_3x))"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Actual: Q1 = -0.16854, Q2 = 0.02845, Q3 = 0.16709\n",
"Robot: Q1 = -0.19084, Q2 = 0.09503, Q3 = 0.31844\n",
"\n",
"Actual: Average = 0.01208 -- Std. Dev = 0.25716\n",
"Robot: Average = 0.07331 -- Std. Dev = 0.28031\n"
]
}
],
"source": [
"#Comparison in x-Direction\n",
"print('Actual: Q1 = {:1.5f}, Q2 = {:1.5f}, Q3 = {:1.5f}'.format(quartiles_xpos[0], quartiles_xpos[1], quartiles_xpos[2]))\n",
"print('Robot: Q1 = {:1.5f}, Q2 = {:1.5f}, Q3 = {:1.5f}'.format(quartile_1x, quartile_2x, quartile_3x))\n",
"print()\n",
"print('Actual: Average = {:1.5f} -- Std. Dev = {:1.5f}'.format(x_mean, x_std))\n",
"print('Robot: Average = {:1.5f} -- Std. Dev = {:1.5f}'.format(x_mean1, x_std1))"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"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": [
"data2 = [x_position, x_impact]\n",
"fig, ax = plt.subplots();\n",
"ax.boxplot(data2, labels = ('Actual','Robot'), vert=False);\n",
"plt.title('Boxplots of Actual and Robot Throw Locations (x)');"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Robot vs. Actual Scatter Plot"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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mB5t7u4Eg0M1QFQKNn1OMxfOeJG3l7bQt1cT40cNZMye/aqdLZFESkr1mkhVTJ/TzFnTnqV5aQsONC9t4axpzzJ9TnO1syYJcsIJJ2BmnHbaaUUdf+mllzJt2rQS56qtKVOmYGYsXLiwbK+hoCOSxYUzXqRl9dpWaS2r13LhjBerlCNJmpaWFm655RYAbrzxRtasWVPwOSoVdCpBQUcki7eXthSULhJ12223sXz5cr761a+yaNEi7rnnnmpnqaoUdESy6NsrvgtvpnSRqGuvvZbevXszZcoUmpqauO6669rs88wzz/D1r3+dTTfdlKamJgYOHMikSZOAYCHJ119/nRtvvBEzw8wYN24cAOPGjSNuZePhw4czfPjw9b9/8sknnHrqqey2225svPHGbLXVVhx66KG88MIL5bjkrBLTkUCkGsaPGshZ055tVcXW1Lkj40cNrGKuJB+10AHk7bff5t577+Wkk05i8803Z8yYMUybNo0lS5bQu3cwbeTjjz/O8OHD2Wmnnbjkkkvo378/L7/8MnPnzgWCktJXv/pVPvvZz65f9XXzzdusAp3VqlWrWLFiBT/72c/YeuutWbx4MVdeeSX77LMPL7zwAltttVVJrzsbBR2RLFIfUtX+8JLCpDqApL4spDqAABW9d9dffz3r1q3j+OOPB2Ds2LH89a9/5eabb+Z73/seAKeffjqbbropjz76KN27dwdgxIgR68+x55570rVrVzbbbDP22WefovLRs2dP/vSnP63/fe3atYwaNYott9ySv/71r5x66qnFXmLBVL0mksOYPfsx68wRLJj8NWadOUIBJwFqpQPIddddx84778y+++4LwIEHHkjfvn3XV7GtXLmSWbNmceyxx64POOUydepUvvCFL9CrVy86derERhttxEcffcSLL1b2PVHQEZG6UwsdQJ544gnmz5/P4YcfztKlS1m6dCkrVqzg8MMP55FHHuGll15iyZIlrFu3jv79+5c1L3fccQdHH300gwYN4i9/+QuPPfYYTzzxBJtvvjmffPJJWV87StVrIlJ3+vZqojkmwFSyA8i1114LwAUXXMAFF1zQZvt1113H2WefTYcOHdbP2lyobt268emnn7ZJ//DDD9l0003X/37TTTex0047MWXKlPVpq1evZvHixUW9bnuopCMidWf8qIE0de7YKq2SHUA+/fRTbrrpJr7whS/wwAMPtHnsscceXH/99TQ1NbH//vtzww030NKSuRTWtWvX2O3bbbcd7733Hh988MH6tFdffbVNldnKlSvp1Kl1GeP6669n7drWVZCVoJKOiNSdancAufPOO/nwww/5zW9+06rrcsrJJ5/M97//fWbOnMlFF13EsGHD2HffffnJT35C//79ee2113j66af57W9/C8DgwYP5z3/+w5133slWW23FZpttxoABAzjyyCP5+c9/zrHHHstpp53GBx98wKRJk9hss81avd5BBx3E9OnTOfXUUznkkEN48sknufzyy+nVq1cl3o7W3F2PLI/Pfe5zLlIvzjvvvGpnIaP58+dXOwslM3r0aN9kk038448/jt2+dOlSb2pq8rFjx7q7+1NPPeWHHHKI9+zZ07t16+YDBw70yZMnr9//+eef9/3339+bmpocWH+cu/ttt93mu+66q3fr1s2HDBniM2bM8GHDhvmwYcPW77N27Vo/55xzfOutt/ampiY/4IAD/KmnnvLtttuu1bmuueYaB3zBggU5rzHX/QJme8xnqgXbJJOhQ4f67Nlackfqw4QJE9aP9ag1zz//PIMGDap2NiRPue6XmT3p7kOj6WrTERGRilHQERGRilHQERGRilHQERGRilHQERGRilHQERGRilHQERGRilHQERGRilHQERGRilHQERGRilHQEREpgylTpmBm6x9dunRhxx135Oyzzy5qDZtx48aVdN2dKVOm8Oc//7lk58uXZpkWESmjW265hf79+7NixQpuu+02Jk2axIoVK9bPIF0tU6ZMYc2aNXznO9+p6Osq6IiIlNEee+zBTjvtBMCXv/xlXn75Za6++mouu+wyOnRovMqmxrtiEZEq2muvvWhpaWm18Nrjjz/OgQceyMYbb8xGG23EyJEjefzxx2OPf/jhh9l7773p1q0bAwYMiC0x5Trf8OHDefDBB5k1a9b66r+4dX/KQUFHROrT3KlwyW4woVfwPHdqtXMEwMKFC+nZs+f65aTnzp3LsGHDWLJkCVOmTOG6665j+fLlDBs2jGeeeabVscuXL+foo49m7NixTJ8+neHDh3PKKae0WoY6n/NdeeWV7LnnngwZMoRHHnmERx55hCuvvLIi16/qNRGpP3Onwh2nwOpwiedlbwa/Aww5qqJZWbt2LWvWrFnfpnPrrbdy6aWX0rFjsJz2xIkT6dq1K/fdd9/6lTy//OUvM2DAAH7xi18wbdq09edasWIFV111FccccwwQrAja3NzMeeedx9ixYzGzvM43ePBgevTowZo1a9hnn30q+n6opCMi9ee+iRsCTsrqliC9wnbZZRc6d+5Mnz59+O53v8vJJ5/MD3/4w/Xb//3vf3PIIYe0Wjq6R48ejB49mgcffLDVuTp27MgRRxzRKu2YY47hjTfeoLm5ueDzVYOCjojUn2VvFZZeRrfddhtPPPEEd999NwceeCBXXnkl11133frtixcvZuutt25z3FZbbcWSJUtapfXu3ZvOnTu3Sttyyy0B1gedQs5XDQo6IlJ/emYYz5IpvYx22203hg4dysEHH8ydd97JZz7zGcaPH8/HH38MQJ8+fXj33XfbHPfuu+/Sp0+fVmlLlixh9erVrdLee+89APr161fw+apBQUdE6s/Ic6FzU+u0zk1BehV17dqVCy+8kEWLFq1vuB82bBh33XUXK1asWL/fihUruOOOOxg2bFir49euXcutt97aKu2mm25i2223XR908j1f165daWmJVEFWgIKOiNSfIUfBoZdDz20AC54PvbzinQjijB49mr333puLLrqIlpYWfv7zn9PS0sLIkSO59dZbmTZtGgceeCArV67k3HNbB8lNNtmEM844gyuuuIIZM2Ywbtw47r33XiZOnIiZAeR9vsGDB/Pcc89x8803M3v2bF588cXKvAHurkeWx+c+9zkXqRfnnXdetbOQ0fz586udhZK65pprHPCXX365zbYZM2Y44BdffLG7uz/66KM+cuRI32ijjbx79+4+YsQIf+yxx1odM3bsWO/Xr5/PmjXLhw4d6l27dvVtt93WL7vssjbnz+d877zzjh988MG+8cYbO+DDhg0r6Ppy3S9gtsd8plqwTTIZOnSoz549u9rZECmJCRMmMGHChGpnI9bzzz/PoEGDqp0NyVOu+2VmT7r70Gi6qtdERKRiFHRERKRiEhN0zGwbM/ubmS0zs+VmNs3Mti3iPGeZmZvZQ+XIp4iIZJaIaXDMrDtwP7AKGAs48EvgATMb4u4f53meHYBzgEXlyqsk0/Q5zVw440XeXtpC315NjB81kDF79qt2tkTqTiKCDnAisAMw0N1fATCzucDLwMnAxXme5/+AG4GBJOfapcymz2nmrGnP0rJ6LQDNS1s4a9qzAAo8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\n",
"text/plain": [
"<Figure size 432x432 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(6,6))\n",
"plt.scatter(x_position, y_position, label = \"Actual\") \n",
"plt.scatter(x_impact, z_impact, label = \"Robot\")\n",
"\n",
"plt.axvline(color=\"black\", lw=0.5)\n",
"plt.axhline(color=\"black\", lw=0.5)\n",
"\n",
"plt.legend()\n",
"plt.xlabel(\"X-Position (m)\")\n",
"plt.ylabel(\"Y-Position (m)\")\n",
"plt.title('Actual vs. Robot Throws');"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.3"
}
},
"nbformat": 4,
"nbformat_minor": 4
}