Skip to content

Instantly share code, notes, and snippets.

@kobus-v-schoor
Last active October 1, 2020 13:23
Show Gist options
  • Save kobus-v-schoor/b281e62ee5d071b530e40d2712f0140e to your computer and use it in GitHub Desktop.
Save kobus-v-schoor/b281e62ee5d071b530e40d2712f0140e to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"import math\n",
"import matplotlib.pyplot as plt"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"arr = [160, 180, 170]\n",
"\n",
"ts = 0.01\n",
"t = np.arange(0, len(arr), ts)\n",
"\n",
"def calc_y(t):\n",
" cur = arr[int(math.floor(t))]\n",
" nxt = arr[min(int(math.floor(t + ts)), len(arr)-1)]\n",
" return cur if cur == nxt else float('nan')\n",
"\n",
"y = [calc_y(t) for t in t]"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x7f1bf0658e10>]"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
},
{
"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": [
"plt.plot(t, y)"
]
},
{
"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": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment