{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Defaulting to user installation because normal site-packages is not writeable\n", "Requirement already satisfied: matplotlib in /usr/lib/python3/dist-packages (3.5.1)\n", "Requirement already satisfied: numpy in /usr/lib/python3/dist-packages (1.21.5)\n", "Requirement already satisfied: ipywidgets in /home/basti/.local/lib/python3.10/site-packages (8.0.6)\n", "Collecting ipympl\n", " Downloading ipympl-0.9.3-py2.py3-none-any.whl (511 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m511.6/511.6 KB\u001b[0m \u001b[31m2.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n", "\u001b[?25hRequirement already satisfied: seaborn in /home/basti/.local/lib/python3.10/site-packages (0.12.2)\n", "Requirement already satisfied: pandas in /home/basti/.local/lib/python3.10/site-packages (2.0.1)\n", "Requirement already satisfied: traitlets>=4.3.1 in /usr/local/lib/python3.10/dist-packages (from ipywidgets) (5.5.0)\n", "Requirement already satisfied: ipython>=6.1.0 in /usr/local/lib/python3.10/dist-packages (from ipywidgets) (8.6.0)\n", "Requirement already satisfied: widgetsnbextension~=4.0.7 in /home/basti/.local/lib/python3.10/site-packages (from ipywidgets) (4.0.7)\n", "Requirement already satisfied: jupyterlab-widgets~=3.0.7 in /home/basti/.local/lib/python3.10/site-packages (from ipywidgets) (3.0.7)\n", "Requirement already satisfied: ipykernel>=4.5.1 in /usr/local/lib/python3.10/dist-packages (from ipywidgets) (6.17.1)\n", "Requirement already satisfied: pillow in /home/basti/.local/lib/python3.10/site-packages (from ipympl) (9.5.0)\n", "Requirement already satisfied: ipython-genutils in /usr/local/lib/python3.10/dist-packages (from ipympl) (0.2.0)\n", "Requirement already satisfied: tzdata>=2022.1 in /home/basti/.local/lib/python3.10/site-packages (from pandas) (2023.3)\n", "Requirement already satisfied: pytz>=2020.1 in /usr/lib/python3/dist-packages (from pandas) (2022.1)\n", "Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.10/dist-packages (from pandas) (2.8.2)\n", "Requirement already satisfied: tornado>=6.1 in /usr/local/lib/python3.10/dist-packages (from ipykernel>=4.5.1->ipywidgets) (6.2)\n", "Requirement already satisfied: debugpy>=1.0 in /usr/local/lib/python3.10/dist-packages (from ipykernel>=4.5.1->ipywidgets) (1.6.3)\n", "Requirement already satisfied: psutil in /usr/lib/python3/dist-packages (from ipykernel>=4.5.1->ipywidgets) (5.9.0)\n", "Requirement already satisfied: packaging in /usr/lib/python3/dist-packages (from ipykernel>=4.5.1->ipywidgets) (21.3)\n", "Requirement already satisfied: jupyter-client>=6.1.12 in /usr/local/lib/python3.10/dist-packages (from ipykernel>=4.5.1->ipywidgets) (7.4.7)\n", "Requirement already satisfied: matplotlib-inline>=0.1 in /usr/local/lib/python3.10/dist-packages (from ipykernel>=4.5.1->ipywidgets) (0.1.6)\n", "Requirement already satisfied: nest-asyncio in /usr/local/lib/python3.10/dist-packages (from ipykernel>=4.5.1->ipywidgets) (1.5.6)\n", "Requirement already satisfied: pyzmq>=17 in /usr/local/lib/python3.10/dist-packages (from ipykernel>=4.5.1->ipywidgets) (24.0.1)\n", "Requirement already satisfied: backcall in /usr/local/lib/python3.10/dist-packages (from ipython>=6.1.0->ipywidgets) (0.2.0)\n", "Requirement already satisfied: jedi>=0.16 in /usr/local/lib/python3.10/dist-packages (from ipython>=6.1.0->ipywidgets) (0.18.2)\n", "Requirement already satisfied: pygments>=2.4.0 in /usr/local/lib/python3.10/dist-packages (from ipython>=6.1.0->ipywidgets) (2.13.0)\n", "Requirement already satisfied: decorator in /usr/lib/python3/dist-packages (from ipython>=6.1.0->ipywidgets) (4.4.2)\n", "Requirement already satisfied: pexpect>4.3 in /usr/local/lib/python3.10/dist-packages (from ipython>=6.1.0->ipywidgets) (4.8.0)\n", "Requirement already satisfied: pickleshare in /usr/local/lib/python3.10/dist-packages (from ipython>=6.1.0->ipywidgets) (0.7.5)\n", "Requirement already satisfied: prompt-toolkit<3.1.0,>3.0.1 in /usr/local/lib/python3.10/dist-packages (from ipython>=6.1.0->ipywidgets) (3.0.33)\n", "Requirement already satisfied: stack-data in /usr/local/lib/python3.10/dist-packages (from ipython>=6.1.0->ipywidgets) (0.6.1)\n", "Requirement already satisfied: six>=1.5 in /usr/lib/python3/dist-packages (from python-dateutil>=2.8.2->pandas) (1.16.0)\n", "Requirement already satisfied: parso<0.9.0,>=0.8.0 in /usr/local/lib/python3.10/dist-packages (from jedi>=0.16->ipython>=6.1.0->ipywidgets) (0.8.3)\n", "Requirement already satisfied: jupyter-core>=4.9.2 in /usr/local/lib/python3.10/dist-packages (from jupyter-client>=6.1.12->ipykernel>=4.5.1->ipywidgets) (5.0.0)\n", "Requirement already satisfied: entrypoints in /usr/local/lib/python3.10/dist-packages (from jupyter-client>=6.1.12->ipykernel>=4.5.1->ipywidgets) (0.4)\n", "Requirement already satisfied: ptyprocess>=0.5 in /usr/local/lib/python3.10/dist-packages (from pexpect>4.3->ipython>=6.1.0->ipywidgets) (0.7.0)\n", "Requirement already satisfied: wcwidth in /usr/local/lib/python3.10/dist-packages (from prompt-toolkit<3.1.0,>3.0.1->ipython>=6.1.0->ipywidgets) (0.2.5)\n", "Requirement already satisfied: executing>=1.2.0 in /usr/local/lib/python3.10/dist-packages (from stack-data->ipython>=6.1.0->ipywidgets) (1.2.0)\n", "Requirement already satisfied: asttokens>=2.1.0 in /usr/local/lib/python3.10/dist-packages (from stack-data->ipython>=6.1.0->ipywidgets) (2.1.0)\n", "Requirement already satisfied: pure-eval in /usr/local/lib/python3.10/dist-packages (from stack-data->ipython>=6.1.0->ipywidgets) (0.2.2)\n", "Requirement already satisfied: platformdirs in /usr/local/lib/python3.10/dist-packages (from jupyter-core>=4.9.2->jupyter-client>=6.1.12->ipykernel>=4.5.1->ipywidgets) (2.5.4)\n", "Installing collected packages: ipympl\n", "Successfully installed ipympl-0.9.3\n", "Note: you may need to restart the kernel to use updated packages.\n" ] } ], "source": [ "###### Install those packages (simply change cell type to code and run)\n", "%pip install matplotlib numpy ipywidgets ipympl seaborn pandas" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "%matplotlib widget\n", "import numpy as np\n", "import pandas as pd\n", "import seaborn as sns\n", "import matplotlib.pyplot as plt\n" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "def values():\n", " return np.linspace(0.0, 40.0, 41)**2 / 100" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "def error(values, mean=0, sigma=1.0, seed=0):\n", " np.random.RandomState(seed)\n", " values += np.random.normal(loc=mean, scale=sigma, size=values.shape)\n", " return values" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "def mean_filter(x, filter_len=4):\n", " filtered = np.zeros_like(x)\n", " for t in range(len(x)):\n", " lower_bound = max([0, t-filter_len])\n", " filtered[t] = np.mean(x[lower_bound:t+1])\n", " return filtered" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ttrutherrorvaluefilter
000.000.0000000.000000perfect
110.010.0000000.010000perfect
220.040.0000000.040000perfect
330.090.0000000.090000perfect
440.160.0000000.160000perfect
..................
1183612.96-2.18544810.774552meanfilter
1193713.69-1.85023911.839761meanfilter
1203814.44-1.42504813.014952meanfilter
1213915.21-1.65210313.557897meanfilter
1224016.00-1.63433514.365665meanfilter
\n", "

123 rows × 5 columns

\n", "
" ], "text/plain": [ " t truth error value filter\n", "0 0 0.00 0.000000 0.000000 perfect\n", "1 1 0.01 0.000000 0.010000 perfect\n", "2 2 0.04 0.000000 0.040000 perfect\n", "3 3 0.09 0.000000 0.090000 perfect\n", "4 4 0.16 0.000000 0.160000 perfect\n", ".. .. ... ... ... ...\n", "118 36 12.96 -2.185448 10.774552 meanfilter\n", "119 37 13.69 -1.850239 11.839761 meanfilter\n", "120 38 14.44 -1.425048 13.014952 meanfilter\n", "121 39 15.21 -1.652103 13.557897 meanfilter\n", "122 40 16.00 -1.634335 14.365665 meanfilter\n", "\n", "[123 rows x 5 columns]" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def make_df(truth, filtered,name):\n", " return pd.DataFrame({'t': list(range(len(truth))), 'truth': truth, 'error': filtered-truth, 'value': filtered, 'filter': name})\n", "\n", "frames = [make_df(values(), values(), 'perfect'),\n", " make_df(values(), error(values()), 'nofilter'),\n", " make_df(values(), mean_filter(error(values())), 'meanfilter')\n", "]\n", "df = pd.concat(frames, ignore_index=True)\n", "df\n" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "2bc2333acad64a18a1c4067f6b8a83cd", "version_major": 2, "version_minor": 0 }, "image/png": "iVBORw0KGgoAAAANSUhEUgAAAoAAAAHgCAYAAAA10dzkAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAAB8+0lEQVR4nO3dd3zTdeLH8VeSNkn3oBsKlL23CKiACwQFxIUb9MTTU05Fft5xQ0FPUe/01HMvcKJ3Iu4BKkMRURAEAZFRKKOlFGjTmbZJfn98bUtoyuhu8n4+HnnQfL7ffPMJXyBvPtPk8Xg8iIiIiEjAMDd1BURERESkcSkAioiIiAQYBUARERGRAKMAKCIiIhJgFABFREREAowCoIiIiEiAUQAUERERCTAKgCIiIiIBRgFQREREJMAoAIqIiIgEGAVAERERkQCjACgiIiISYBQARURERAKMAqCIiIhIgFEAFBEREQkwCoAiIiIiAUYBUERERCTAKACKiIiIBBgFQBEREZEAowAoIiIiEmAUAEVEREQCjAKgiIiISIBRABQREREJMAqAIiIiIgFGAVBEREQkwCgAioiIiAQYBUARERGRAKMAKCIiIhJgFABFREREAowCoIiIiEiAUQAUERERCTAKgCIiIiIBRgFQREREJMAoAIqIiIgEGAVAERERkQCjACgiIiISYBQARURERAKMAqCIiIhIgFEAFBEREQkwCoAiIiIiAUYBUERERCTAKACKiIiIBBgFQBEREZEAowAoIiIiEmAUAEVEREQCjAKgiIiISIBRABQREREJMAqAIiIiIgFGAVBEREQkwCgAioiIiAQYBUARERGRAKMAKCIiIhJgFABFREREAowCoIiIiEiAUQAUERERCTAKgCIiIiIBJqipK9CSud1u9u3bR0REBCaTqamrIyIiIifA4/GQn59PSkoKZnNgtoUpANbBvn37SE1NbepqiIiISC3s3r2bNm3aNHU1moQCYB1EREQAxh+gyMjIJq6NiIiInAiHw0Fqamrl93ggUgCsg4pu38jISAVAERGRFiaQh28FZse3iIiISABTABQREREJMAqAIiIiIgFGYwAbmMfjoby8HJfL1dRVkXpmsVgICgoK6DEkIiLSMikANqDS0lIyMzMpKipq6qpIAwkNDSU5ORmr1drUVRERETlhCoANxO12k56ejsViISUlBavV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", "text/html": [ "\n", "
\n", "
\n", " Figure\n", "
\n", " \n", "
\n", " " ], "text/plain": [ "Canvas(toolbar=Toolbar(toolitems=[('Home', 'Reset original view', 'home', 'home'), ('Back', 'Back to previous …" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.figure()\n", "sns.scatterplot(data=df, x='t', y='value', hue='filter', style=\"filter\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3.10.2 ('robotics')", "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.10.6" }, "orig_nbformat": 4, "vscode": { "interpreter": { "hash": "eb6c4675634aadac0eb17e8d586a18bfe83b6ceac5f4512f9cf408e3359b4c1c" } } }, "nbformat": 4, "nbformat_minor": 2 }