Skip to content

Instantly share code, notes, and snippets.

@jhh
Created January 22, 2018 15:33
Show Gist options
  • Save jhh/b76593c48c6bb1eefd80646fd1a35f39 to your computer and use it in GitHub Desktop.
Save jhh/b76593c48c6bb1eefd80646fd1a35f39 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd\n",
"import numpy as np\n",
"import math\n",
"import matplotlib.pyplot as plt\n",
"import subprocess\n",
"%matplotlib notebook"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Motion Profile Visualization\n",
"This uses our Java robot code to output motion profile points to a `.csv` file we use to plot.\n",
"\n",
"Parameters are:\n",
"\n",
"- `dt` = iteration time, loop period (ms)\n",
"- `t1` = time for first filter (ms)\n",
"- `t2` = time for second filter (ms)\n",
"- `v_prog` = desired max velocity (ft/sec)\n",
"- `dist` = travel distance (ft)\n"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"time to end point = 800 ms\n",
"time to max velocity = 300 ms\n",
"max velocity = 16.0 ft/sec\n",
"max acceleration = 80.0 ft/sec^2\n"
]
},
{
"data": {
"application/javascript": [
"/* Put everything inside the global mpl namespace */\n",
"window.mpl = {};\n",
"\n",
"\n",
"mpl.get_websocket_type = function() {\n",
" if (typeof(WebSocket) !== 'undefined') {\n",
" return WebSocket;\n",
" } else if (typeof(MozWebSocket) !== 'undefined') {\n",
" return MozWebSocket;\n",
" } else {\n",
" alert('Your browser does not have WebSocket support.' +\n",
" 'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
" 'Firefox 4 and 5 are also supported but you ' +\n",
" 'have to enable WebSockets in about:config.');\n",
" };\n",
"}\n",
"\n",
"mpl.figure = function(figure_id, websocket, ondownload, parent_element) {\n",
" this.id = figure_id;\n",
"\n",
" this.ws = websocket;\n",
"\n",
" this.supports_binary = (this.ws.binaryType != undefined);\n",
"\n",
" if (!this.supports_binary) {\n",
" var warnings = document.getElementById(\"mpl-warnings\");\n",
" if (warnings) {\n",
" warnings.style.display = 'block';\n",
" warnings.textContent = (\n",
" \"This browser does not support binary websocket messages. \" +\n",
" \"Performance may be slow.\");\n",
" }\n",
" }\n",
"\n",
" this.imageObj = new Image();\n",
"\n",
" this.context = undefined;\n",
" this.message = undefined;\n",
" this.canvas = undefined;\n",
" this.rubberband_canvas = undefined;\n",
" this.rubberband_context = undefined;\n",
" this.format_dropdown = undefined;\n",
"\n",
" this.image_mode = 'full';\n",
"\n",
" this.root = $('<div/>');\n",
" this._root_extra_style(this.root)\n",
" this.root.attr('style', 'display: inline-block');\n",
"\n",
" $(parent_element).append(this.root);\n",
"\n",
" this._init_header(this);\n",
" this._init_canvas(this);\n",
" this._init_toolbar(this);\n",
"\n",
" var fig = this;\n",
"\n",
" this.waiting = false;\n",
"\n",
" this.ws.onopen = function () {\n",
" fig.send_message(\"supports_binary\", {value: fig.supports_binary});\n",
" fig.send_message(\"send_image_mode\", {});\n",
" if (mpl.ratio != 1) {\n",
" fig.send_message(\"set_dpi_ratio\", {'dpi_ratio': mpl.ratio});\n",
" }\n",
" fig.send_message(\"refresh\", {});\n",
" }\n",
"\n",
" this.imageObj.onload = function() {\n",
" if (fig.image_mode == 'full') {\n",
" // Full images could contain transparency (where diff images\n",
" // almost always do), so we need to clear the canvas so that\n",
" // there is no ghosting.\n",
" fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
" }\n",
" fig.context.drawImage(fig.imageObj, 0, 0);\n",
" };\n",
"\n",
" this.imageObj.onunload = function() {\n",
" fig.ws.close();\n",
" }\n",
"\n",
" this.ws.onmessage = this._make_on_message_function(this);\n",
"\n",
" this.ondownload = ondownload;\n",
"}\n",
"\n",
"mpl.figure.prototype._init_header = function() {\n",
" var titlebar = $(\n",
" '<div class=\"ui-dialog-titlebar ui-widget-header ui-corner-all ' +\n",
" 'ui-helper-clearfix\"/>');\n",
" var titletext = $(\n",
" '<div class=\"ui-dialog-title\" style=\"width: 100%; ' +\n",
" 'text-align: center; padding: 3px;\"/>');\n",
" titlebar.append(titletext)\n",
" this.root.append(titlebar);\n",
" this.header = titletext[0];\n",
"}\n",
"\n",
"\n",
"\n",
"mpl.figure.prototype._canvas_extra_style = function(canvas_div) {\n",
"\n",
"}\n",
"\n",
"\n",
"mpl.figure.prototype._root_extra_style = function(canvas_div) {\n",
"\n",
"}\n",
"\n",
"mpl.figure.prototype._init_canvas = function() {\n",
" var fig = this;\n",
"\n",
" var canvas_div = $('<div/>');\n",
"\n",
" canvas_div.attr('style', 'position: relative; clear: both; outline: 0');\n",
"\n",
" function canvas_keyboard_event(event) {\n",
" return fig.key_event(event, event['data']);\n",
" }\n",
"\n",
" canvas_div.keydown('key_press', canvas_keyboard_event);\n",
" canvas_div.keyup('key_release', canvas_keyboard_event);\n",
" this.canvas_div = canvas_div\n",
" this._canvas_extra_style(canvas_div)\n",
" this.root.append(canvas_div);\n",
"\n",
" var canvas = $('<canvas/>');\n",
" canvas.addClass('mpl-canvas');\n",
" canvas.attr('style', \"left: 0; top: 0; z-index: 0; outline: 0\")\n",
"\n",
" this.canvas = canvas[0];\n",
" this.context = canvas[0].getContext(\"2d\");\n",
"\n",
" var backingStore = this.context.backingStorePixelRatio ||\n",
"\tthis.context.webkitBackingStorePixelRatio ||\n",
"\tthis.context.mozBackingStorePixelRatio ||\n",
"\tthis.context.msBackingStorePixelRatio ||\n",
"\tthis.context.oBackingStorePixelRatio ||\n",
"\tthis.context.backingStorePixelRatio || 1;\n",
"\n",
" mpl.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
"\n",
" var rubberband = $('<canvas/>');\n",
" rubberband.attr('style', \"position: absolute; left: 0; top: 0; z-index: 1;\")\n",
"\n",
" var pass_mouse_events = true;\n",
"\n",
" canvas_div.resizable({\n",
" start: function(event, ui) {\n",
" pass_mouse_events = false;\n",
" },\n",
" resize: function(event, ui) {\n",
" fig.request_resize(ui.size.width, ui.size.height);\n",
" },\n",
" stop: function(event, ui) {\n",
" pass_mouse_events = true;\n",
" fig.request_resize(ui.size.width, ui.size.height);\n",
" },\n",
" });\n",
"\n",
" function mouse_event_fn(event) {\n",
" if (pass_mouse_events)\n",
" return fig.mouse_event(event, event['data']);\n",
" }\n",
"\n",
" rubberband.mousedown('button_press', mouse_event_fn);\n",
" rubberband.mouseup('button_release', mouse_event_fn);\n",
" // Throttle sequential mouse events to 1 every 20ms.\n",
" rubberband.mousemove('motion_notify', mouse_event_fn);\n",
"\n",
" rubberband.mouseenter('figure_enter', mouse_event_fn);\n",
" rubberband.mouseleave('figure_leave', mouse_event_fn);\n",
"\n",
" canvas_div.on(\"wheel\", function (event) {\n",
" event = event.originalEvent;\n",
" event['data'] = 'scroll'\n",
" if (event.deltaY < 0) {\n",
" event.step = 1;\n",
" } else {\n",
" event.step = -1;\n",
" }\n",
" mouse_event_fn(event);\n",
" });\n",
"\n",
" canvas_div.append(canvas);\n",
" canvas_div.append(rubberband);\n",
"\n",
" this.rubberband = rubberband;\n",
" this.rubberband_canvas = rubberband[0];\n",
" this.rubberband_context = rubberband[0].getContext(\"2d\");\n",
" this.rubberband_context.strokeStyle = \"#000000\";\n",
"\n",
" this._resize_canvas = function(width, height) {\n",
" // Keep the size of the canvas, canvas container, and rubber band\n",
" // canvas in synch.\n",
" canvas_div.css('width', width)\n",
" canvas_div.css('height', height)\n",
"\n",
" canvas.attr('width', width * mpl.ratio);\n",
" canvas.attr('height', height * mpl.ratio);\n",
" canvas.attr('style', 'width: ' + width + 'px; height: ' + height + 'px;');\n",
"\n",
" rubberband.attr('width', width);\n",
" rubberband.attr('height', height);\n",
" }\n",
"\n",
" // Set the figure to an initial 600x600px, this will subsequently be updated\n",
" // upon first draw.\n",
" this._resize_canvas(600, 600);\n",
"\n",
" // Disable right mouse context menu.\n",
" $(this.rubberband_canvas).bind(\"contextmenu\",function(e){\n",
" return false;\n",
" });\n",
"\n",
" function set_focus () {\n",
" canvas.focus();\n",
" canvas_div.focus();\n",
" }\n",
"\n",
" window.setTimeout(set_focus, 100);\n",
"}\n",
"\n",
"mpl.figure.prototype._init_toolbar = function() {\n",
" var fig = this;\n",
"\n",
" var nav_element = $('<div/>')\n",
" nav_element.attr('style', 'width: 100%');\n",
" this.root.append(nav_element);\n",
"\n",
" // Define a callback function for later on.\n",
" function toolbar_event(event) {\n",
" return fig.toolbar_button_onclick(event['data']);\n",
" }\n",
" function toolbar_mouse_event(event) {\n",
" return fig.toolbar_button_onmouseover(event['data']);\n",
" }\n",
"\n",
" for(var toolbar_ind in mpl.toolbar_items) {\n",
" var name = mpl.toolbar_items[toolbar_ind][0];\n",
" var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
" var image = mpl.toolbar_items[toolbar_ind][2];\n",
" var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
"\n",
" if (!name) {\n",
" // put a spacer in here.\n",
" continue;\n",
" }\n",
" var button = $('<button/>');\n",
" button.addClass('ui-button ui-widget ui-state-default ui-corner-all ' +\n",
" 'ui-button-icon-only');\n",
" button.attr('role', 'button');\n",
" button.attr('aria-disabled', 'false');\n",
" button.click(method_name, toolbar_event);\n",
" button.mouseover(tooltip, toolbar_mouse_event);\n",
"\n",
" var icon_img = $('<span/>');\n",
" icon_img.addClass('ui-button-icon-primary ui-icon');\n",
" icon_img.addClass(image);\n",
" icon_img.addClass('ui-corner-all');\n",
"\n",
" var tooltip_span = $('<span/>');\n",
" tooltip_span.addClass('ui-button-text');\n",
" tooltip_span.html(tooltip);\n",
"\n",
" button.append(icon_img);\n",
" button.append(tooltip_span);\n",
"\n",
" nav_element.append(button);\n",
" }\n",
"\n",
" var fmt_picker_span = $('<span/>');\n",
"\n",
" var fmt_picker = $('<select/>');\n",
" fmt_picker.addClass('mpl-toolbar-option ui-widget ui-widget-content');\n",
" fmt_picker_span.append(fmt_picker);\n",
" nav_element.append(fmt_picker_span);\n",
" this.format_dropdown = fmt_picker[0];\n",
"\n",
" for (var ind in mpl.extensions) {\n",
" var fmt = mpl.extensions[ind];\n",
" var option = $(\n",
" '<option/>', {selected: fmt === mpl.default_extension}).html(fmt);\n",
" fmt_picker.append(option)\n",
" }\n",
"\n",
" // Add hover states to the ui-buttons\n",
" $( \".ui-button\" ).hover(\n",
" function() { $(this).addClass(\"ui-state-hover\");},\n",
" function() { $(this).removeClass(\"ui-state-hover\");}\n",
" );\n",
"\n",
" var status_bar = $('<span class=\"mpl-message\"/>');\n",
" nav_element.append(status_bar);\n",
" this.message = status_bar[0];\n",
"}\n",
"\n",
"mpl.figure.prototype.request_resize = function(x_pixels, y_pixels) {\n",
" // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
" // which will in turn request a refresh of the image.\n",
" this.send_message('resize', {'width': x_pixels, 'height': y_pixels});\n",
"}\n",
"\n",
"mpl.figure.prototype.send_message = function(type, properties) {\n",
" properties['type'] = type;\n",
" properties['figure_id'] = this.id;\n",
" this.ws.send(JSON.stringify(properties));\n",
"}\n",
"\n",
"mpl.figure.prototype.send_draw_message = function() {\n",
" if (!this.waiting) {\n",
" this.waiting = true;\n",
" this.ws.send(JSON.stringify({type: \"draw\", figure_id: this.id}));\n",
" }\n",
"}\n",
"\n",
"\n",
"mpl.figure.prototype.handle_save = function(fig, msg) {\n",
" var format_dropdown = fig.format_dropdown;\n",
" var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
" fig.ondownload(fig, format);\n",
"}\n",
"\n",
"\n",
"mpl.figure.prototype.handle_resize = function(fig, msg) {\n",
" var size = msg['size'];\n",
" if (size[0] != fig.canvas.width || size[1] != fig.canvas.height) {\n",
" fig._resize_canvas(size[0], size[1]);\n",
" fig.send_message(\"refresh\", {});\n",
" };\n",
"}\n",
"\n",
"mpl.figure.prototype.handle_rubberband = function(fig, msg) {\n",
" var x0 = msg['x0'] / mpl.ratio;\n",
" var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
" var x1 = msg['x1'] / mpl.ratio;\n",
" var y1 = (fig.canvas.height - msg['y1']) / mpl.ratio;\n",
" x0 = Math.floor(x0) + 0.5;\n",
" y0 = Math.floor(y0) + 0.5;\n",
" x1 = Math.floor(x1) + 0.5;\n",
" y1 = Math.floor(y1) + 0.5;\n",
" var min_x = Math.min(x0, x1);\n",
" var min_y = Math.min(y0, y1);\n",
" var width = Math.abs(x1 - x0);\n",
" var height = Math.abs(y1 - y0);\n",
"\n",
" fig.rubberband_context.clearRect(\n",
" 0, 0, fig.canvas.width, fig.canvas.height);\n",
"\n",
" fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
"}\n",
"\n",
"mpl.figure.prototype.handle_figure_label = function(fig, msg) {\n",
" // Updates the figure title.\n",
" fig.header.textContent = msg['label'];\n",
"}\n",
"\n",
"mpl.figure.prototype.handle_cursor = function(fig, msg) {\n",
" var cursor = msg['cursor'];\n",
" switch(cursor)\n",
" {\n",
" case 0:\n",
" cursor = 'pointer';\n",
" break;\n",
" case 1:\n",
" cursor = 'default';\n",
" break;\n",
" case 2:\n",
" cursor = 'crosshair';\n",
" break;\n",
" case 3:\n",
" cursor = 'move';\n",
" break;\n",
" }\n",
" fig.rubberband_canvas.style.cursor = cursor;\n",
"}\n",
"\n",
"mpl.figure.prototype.handle_message = function(fig, msg) {\n",
" fig.message.textContent = msg['message'];\n",
"}\n",
"\n",
"mpl.figure.prototype.handle_draw = function(fig, msg) {\n",
" // Request the server to send over a new figure.\n",
" fig.send_draw_message();\n",
"}\n",
"\n",
"mpl.figure.prototype.handle_image_mode = function(fig, msg) {\n",
" fig.image_mode = msg['mode'];\n",
"}\n",
"\n",
"mpl.figure.prototype.updated_canvas_event = function() {\n",
" // Called whenever the canvas gets updated.\n",
" this.send_message(\"ack\", {});\n",
"}\n",
"\n",
"// A function to construct a web socket function for onmessage handling.\n",
"// Called in the figure constructor.\n",
"mpl.figure.prototype._make_on_message_function = function(fig) {\n",
" return function socket_on_message(evt) {\n",
" if (evt.data instanceof Blob) {\n",
" /* FIXME: We get \"Resource interpreted as Image but\n",
" * transferred with MIME type text/plain:\" errors on\n",
" * Chrome. But how to set the MIME type? It doesn't seem\n",
" * to be part of the websocket stream */\n",
" evt.data.type = \"image/png\";\n",
"\n",
" /* Free the memory for the previous frames */\n",
" if (fig.imageObj.src) {\n",
" (window.URL || window.webkitURL).revokeObjectURL(\n",
" fig.imageObj.src);\n",
" }\n",
"\n",
" fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
" evt.data);\n",
" fig.updated_canvas_event();\n",
" fig.waiting = false;\n",
" return;\n",
" }\n",
" else if (typeof evt.data === 'string' && evt.data.slice(0, 21) == \"data:image/png;base64\") {\n",
" fig.imageObj.src = evt.data;\n",
" fig.updated_canvas_event();\n",
" fig.waiting = false;\n",
" return;\n",
" }\n",
"\n",
" var msg = JSON.parse(evt.data);\n",
" var msg_type = msg['type'];\n",
"\n",
" // Call the \"handle_{type}\" callback, which takes\n",
" // the figure and JSON message as its only arguments.\n",
" try {\n",
" var callback = fig[\"handle_\" + msg_type];\n",
" } catch (e) {\n",
" console.log(\"No handler for the '\" + msg_type + \"' message type: \", msg);\n",
" return;\n",
" }\n",
"\n",
" if (callback) {\n",
" try {\n",
" // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
" callback(fig, msg);\n",
" } catch (e) {\n",
" console.log(\"Exception inside the 'handler_\" + msg_type + \"' callback:\", e, e.stack, msg);\n",
" }\n",
" }\n",
" };\n",
"}\n",
"\n",
"// from http://stackoverflow.com/questions/1114465/getting-mouse-location-in-canvas\n",
"mpl.findpos = function(e) {\n",
" //this section is from http://www.quirksmode.org/js/events_properties.html\n",
" var targ;\n",
" if (!e)\n",
" e = window.event;\n",
" if (e.target)\n",
" targ = e.target;\n",
" else if (e.srcElement)\n",
" targ = e.srcElement;\n",
" if (targ.nodeType == 3) // defeat Safari bug\n",
" targ = targ.parentNode;\n",
"\n",
" // jQuery normalizes the pageX and pageY\n",
" // pageX,Y are the mouse positions relative to the document\n",
" // offset() returns the position of the element relative to the document\n",
" var x = e.pageX - $(targ).offset().left;\n",
" var y = e.pageY - $(targ).offset().top;\n",
"\n",
" return {\"x\": x, \"y\": y};\n",
"};\n",
"\n",
"/*\n",
" * return a copy of an object with only non-object keys\n",
" * we need this to avoid circular references\n",
" * http://stackoverflow.com/a/24161582/3208463\n",
" */\n",
"function simpleKeys (original) {\n",
" return Object.keys(original).reduce(function (obj, key) {\n",
" if (typeof original[key] !== 'object')\n",
" obj[key] = original[key]\n",
" return obj;\n",
" }, {});\n",
"}\n",
"\n",
"mpl.figure.prototype.mouse_event = function(event, name) {\n",
" var canvas_pos = mpl.findpos(event)\n",
"\n",
" if (name === 'button_press')\n",
" {\n",
" this.canvas.focus();\n",
" this.canvas_div.focus();\n",
" }\n",
"\n",
" var x = canvas_pos.x * mpl.ratio;\n",
" var y = canvas_pos.y * mpl.ratio;\n",
"\n",
" this.send_message(name, {x: x, y: y, button: event.button,\n",
" step: event.step,\n",
" guiEvent: simpleKeys(event)});\n",
"\n",
" /* This prevents the web browser from automatically changing to\n",
" * the text insertion cursor when the button is pressed. We want\n",
" * to control all of the cursor setting manually through the\n",
" * 'cursor' event from matplotlib */\n",
" event.preventDefault();\n",
" return false;\n",
"}\n",
"\n",
"mpl.figure.prototype._key_event_extra = function(event, name) {\n",
" // Handle any extra behaviour associated with a key event\n",
"}\n",
"\n",
"mpl.figure.prototype.key_event = function(event, name) {\n",
"\n",
" // Prevent repeat events\n",
" if (name == 'key_press')\n",
" {\n",
" if (event.which === this._key)\n",
" return;\n",
" else\n",
" this._key = event.which;\n",
" }\n",
" if (name == 'key_release')\n",
" this._key = null;\n",
"\n",
" var value = '';\n",
" if (event.ctrlKey && event.which != 17)\n",
" value += \"ctrl+\";\n",
" if (event.altKey && event.which != 18)\n",
" value += \"alt+\";\n",
" if (event.shiftKey && event.which != 16)\n",
" value += \"shift+\";\n",
"\n",
" value += 'k';\n",
" value += event.which.toString();\n",
"\n",
" this._key_event_extra(event, name);\n",
"\n",
" this.send_message(name, {key: value,\n",
" guiEvent: simpleKeys(event)});\n",
" return false;\n",
"}\n",
"\n",
"mpl.figure.prototype.toolbar_button_onclick = function(name) {\n",
" if (name == 'download') {\n",
" this.handle_save(this, null);\n",
" } else {\n",
" this.send_message(\"toolbar_button\", {name: name});\n",
" }\n",
"};\n",
"\n",
"mpl.figure.prototype.toolbar_button_onmouseover = function(tooltip) {\n",
" this.message.textContent = tooltip;\n",
"};\n",
"mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Pan axes with left mouse, zoom with right\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
"\n",
"mpl.extensions = [\"eps\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\"];\n",
"\n",
"mpl.default_extension = \"png\";var comm_websocket_adapter = function(comm) {\n",
" // Create a \"websocket\"-like object which calls the given IPython comm\n",
" // object with the appropriate methods. Currently this is a non binary\n",
" // socket, so there is still some room for performance tuning.\n",
" var ws = {};\n",
"\n",
" ws.close = function() {\n",
" comm.close()\n",
" };\n",
" ws.send = function(m) {\n",
" //console.log('sending', m);\n",
" comm.send(m);\n",
" };\n",
" // Register the callback with on_msg.\n",
" comm.on_msg(function(msg) {\n",
" //console.log('receiving', msg['content']['data'], msg);\n",
" // Pass the mpl event to the overriden (by mpl) onmessage function.\n",
" ws.onmessage(msg['content']['data'])\n",
" });\n",
" return ws;\n",
"}\n",
"\n",
"mpl.mpl_figure_comm = function(comm, msg) {\n",
" // This is the function which gets called when the mpl process\n",
" // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
"\n",
" var id = msg.content.data.id;\n",
" // Get hold of the div created by the display call when the Comm\n",
" // socket was opened in Python.\n",
" var element = $(\"#\" + id);\n",
" var ws_proxy = comm_websocket_adapter(comm)\n",
"\n",
" function ondownload(figure, format) {\n",
" window.open(figure.imageObj.src);\n",
" }\n",
"\n",
" var fig = new mpl.figure(id, ws_proxy,\n",
" ondownload,\n",
" element.get(0));\n",
"\n",
" // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
" // web socket which is closed, not our websocket->open comm proxy.\n",
" ws_proxy.onopen();\n",
"\n",
" fig.parent_element = element.get(0);\n",
" fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
" if (!fig.cell_info) {\n",
" console.error(\"Failed to find cell for figure\", id, fig);\n",
" return;\n",
" }\n",
"\n",
" var output_index = fig.cell_info[2]\n",
" var cell = fig.cell_info[0];\n",
"\n",
"};\n",
"\n",
"mpl.figure.prototype.handle_close = function(fig, msg) {\n",
" var width = fig.canvas.width/mpl.ratio\n",
" fig.root.unbind('remove')\n",
"\n",
" // Update the output cell to use the data from the current canvas.\n",
" fig.push_to_output();\n",
" var dataURL = fig.canvas.toDataURL();\n",
" // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
" // the notebook keyboard shortcuts fail.\n",
" IPython.keyboard_manager.enable()\n",
" $(fig.parent_element).html('<img src=\"' + dataURL + '\" width=\"' + width + '\">');\n",
" fig.close_ws(fig, msg);\n",
"}\n",
"\n",
"mpl.figure.prototype.close_ws = function(fig, msg){\n",
" fig.send_message('closing', msg);\n",
" // fig.ws.close()\n",
"}\n",
"\n",
"mpl.figure.prototype.push_to_output = function(remove_interactive) {\n",
" // Turn the data on the canvas into data in the output cell.\n",
" var width = this.canvas.width/mpl.ratio\n",
" var dataURL = this.canvas.toDataURL();\n",
" this.cell_info[1]['text/html'] = '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
"}\n",
"\n",
"mpl.figure.prototype.updated_canvas_event = function() {\n",
" // Tell IPython that the notebook contents must change.\n",
" IPython.notebook.set_dirty(true);\n",
" this.send_message(\"ack\", {});\n",
" var fig = this;\n",
" // Wait a second, then push the new image to the DOM so\n",
" // that it is saved nicely (might be nice to debounce this).\n",
" setTimeout(function () { fig.push_to_output() }, 1000);\n",
"}\n",
"\n",
"mpl.figure.prototype._init_toolbar = function() {\n",
" var fig = this;\n",
"\n",
" var nav_element = $('<div/>')\n",
" nav_element.attr('style', 'width: 100%');\n",
" this.root.append(nav_element);\n",
"\n",
" // Define a callback function for later on.\n",
" function toolbar_event(event) {\n",
" return fig.toolbar_button_onclick(event['data']);\n",
" }\n",
" function toolbar_mouse_event(event) {\n",
" return fig.toolbar_button_onmouseover(event['data']);\n",
" }\n",
"\n",
" for(var toolbar_ind in mpl.toolbar_items){\n",
" var name = mpl.toolbar_items[toolbar_ind][0];\n",
" var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
" var image = mpl.toolbar_items[toolbar_ind][2];\n",
" var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
"\n",
" if (!name) { continue; };\n",
"\n",
" var button = $('<button class=\"btn btn-default\" href=\"#\" title=\"' + name + '\"><i class=\"fa ' + image + ' fa-lg\"></i></button>');\n",
" button.click(method_name, toolbar_event);\n",
" button.mouseover(tooltip, toolbar_mouse_event);\n",
" nav_element.append(button);\n",
" }\n",
"\n",
" // Add the status bar.\n",
" var status_bar = $('<span class=\"mpl-message\" style=\"text-align:right; float: right;\"/>');\n",
" nav_element.append(status_bar);\n",
" this.message = status_bar[0];\n",
"\n",
" // Add the close button to the window.\n",
" var buttongrp = $('<div class=\"btn-group inline pull-right\"></div>');\n",
" var button = $('<button class=\"btn btn-mini btn-primary\" href=\"#\" title=\"Stop Interaction\"><i class=\"fa fa-power-off icon-remove icon-large\"></i></button>');\n",
" button.click(function (evt) { fig.handle_close(fig, {}); } );\n",
" button.mouseover('Stop Interaction', toolbar_mouse_event);\n",
" buttongrp.append(button);\n",
" var titlebar = this.root.find($('.ui-dialog-titlebar'));\n",
" titlebar.prepend(buttongrp);\n",
"}\n",
"\n",
"mpl.figure.prototype._root_extra_style = function(el){\n",
" var fig = this\n",
" el.on(\"remove\", function(){\n",
"\tfig.close_ws(fig, {});\n",
" });\n",
"}\n",
"\n",
"mpl.figure.prototype._canvas_extra_style = function(el){\n",
" // this is important to make the div 'focusable\n",
" el.attr('tabindex', 0)\n",
" // reach out to IPython and tell the keyboard manager to turn it's self\n",
" // off when our div gets focus\n",
"\n",
" // location in version 3\n",
" if (IPython.notebook.keyboard_manager) {\n",
" IPython.notebook.keyboard_manager.register_events(el);\n",
" }\n",
" else {\n",
" // location in version 2\n",
" IPython.keyboard_manager.register_events(el);\n",
" }\n",
"\n",
"}\n",
"\n",
"mpl.figure.prototype._key_event_extra = function(event, name) {\n",
" var manager = IPython.notebook.keyboard_manager;\n",
" if (!manager)\n",
" manager = IPython.keyboard_manager;\n",
"\n",
" // Check for shift+enter\n",
" if (event.shiftKey && event.which == 13) {\n",
" this.canvas_div.blur();\n",
" event.shiftKey = false;\n",
" // Send a \"J\" for go to next cell\n",
" event.which = 74;\n",
" event.keyCode = 74;\n",
" manager.command_mode();\n",
" manager.handle_keydown(event);\n",
" }\n",
"}\n",
"\n",
"mpl.figure.prototype.handle_save = function(fig, msg) {\n",
" fig.ondownload(fig, null);\n",
"}\n",
"\n",
"\n",
"mpl.find_output_cell = function(html_output) {\n",
" // Return the cell and output element which can be found *uniquely* in the notebook.\n",
" // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
" // IPython event is triggered only after the cells have been serialised, which for\n",
" // our purposes (turning an active figure into a static one), is too late.\n",
" var cells = IPython.notebook.get_cells();\n",
" var ncells = cells.length;\n",
" for (var i=0; i<ncells; i++) {\n",
" var cell = cells[i];\n",
" if (cell.cell_type === 'code'){\n",
" for (var j=0; j<cell.output_area.outputs.length; j++) {\n",
" var data = cell.output_area.outputs[j];\n",
" if (data.data) {\n",
" // IPython >= 3 moved mimebundle to data attribute of output\n",
" data = data.data;\n",
" }\n",
" if (data['text/html'] == html_output) {\n",
" return [cell, data, j];\n",
" }\n",
" }\n",
" }\n",
" }\n",
"}\n",
"\n",
"// Register the function which deals with the matplotlib target/channel.\n",
"// The kernel may be null if the page has been refreshed.\n",
"if (IPython.notebook.kernel != null) {\n",
" IPython.notebook.kernel.comm_manager.register_target('matplotlib', mpl.mpl_figure_comm);\n",
"}\n"
],
"text/plain": [
"<IPython.core.display.Javascript object>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"<img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABkAAAAMgCAYAAAB7wK5aAAAAAXNSR0IArs4c6QAAQABJREFUeAHs3QeYFEXawPGXnEEJSkZUMGLCgKiAWcyeOWfvDGc4E3rJuw9PEfX0PNOZcw53hvOMRFHBgBFBRdiFRUmSM/vV27s10z07oWd2QnfPv56n6FQd6tcvyzI1VSVCQgABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAAB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90dC748+B5iJo/uXtwu1j5ZAsl4giytFPn0sWvWkNggggAACCCCAAAKREqiqqpK3337bqdMpp5ziWb7xxhsyd27CMMYpaj9+/Hg555xznMaTtm3bStOmTaV79+5y6KGHyp133im//PJLijNFfvzxR7n66qulf//+0qFDB2ei9o4dO8pee+0l1113nfzwww8pz120aJHccMMNsscee0inTp2c+3bp0kUOO+wwZ1gvHeKpvum7776Tyy67TPr16yft2rWTFi1ayKabbio638akSZNSXl6HlrKTyuv6+vXr5cEHH5S9995bNt54Y2nYsKFzDXsBPf7uu+/KFVdc4dRHDXQS8g022EB22GEHZ//MmTNtcc9SnfRedi6XGTNmxO5tn0GX7jRkyBCnjC7TJX23p556qmxi5hVp3ry58zw77rij/OEPf0gbH4n113vo0Gr77ruv867UURvbrrrqKlmwYEG6R+AYApEVaBzZmlExBBBAoJwEJt5nen/M99Z4yDDvNlsIREGg9yCRXnuKzBgXr83YW0V2PFWkcbP4PtYQQAABBBBAAAEEEAiIwBNPPCHr1q1zPow/6aSTnKc6+eST5U9/+pOsWbNGnnrqKbn44otTPq3OH3L22Wc75RILzZo1SzS/9tprzgfl+iF9Yrr55pvl2muvde7lPjZ//nwZN26ck/WDdM2J6Z133pHjjz9etKw7zZkzR1599VUnH3zwwfLMM8+IndvEXc7Peqrnmz59umjWXjLaEPDXv/417eV0KKkDDzww1tiUrLBe4y9/+UudQ9rIM3nyZCfffffd8vjjj8tRRx1Vp1y+d2iDzKWXXir33nuv59I6N8xnn33m5H/+85/y3HPPyf777+8pk7ih19JGFH12d5o6daqMHDlSdBi2sWPHSufOnd2HWUcg8gI0gET+FVNBBBCIvMAqM47s+JoxZGN17XOgSDd6f8Q8WImWgDbuPXJovE6LZ4l88qjIrufG97GGAAIIIIAAAggggEBABB57rKbHsvYC6Natm/NUvXv3loEDB4p+818/4E/VAKIfah9xxBHy1ltvOef16dNHLrjgAtl5552lZcuWor1L3n//fedb/8mq+3//939OQ4se014Oeq72jtBeINpj5JNPPpEXX3zR6aWQeL4+29ChQ52GE+1N8dvf/la233576dq1q8yePdtp9NAP219//XU5/fTT5YUXXki8RMZt/WBeeydo0uHBzj//fNE66rN+++23oh/+T5gwQbQe2lsjlZOerz1cPv/8czn88MOdXh+9evWSn376SRYvXqyHnbR27VrR3ivauLH77rs7vUy0x0VFRYXjeNddd8nSpUtFG6rUZquttrKnOnbHHHOM0xjz73//23H43//+Fzuey8qwYcNijR8aE1qHnXbaSZYtWyb/+c9/nPpr44z28vnoo48c/1T3+eMf/+jU4cgjj5TTTjtNbP21d5A2kNleNtrgRkIAAQQQQKC7IdA+nNXmH0HTmzN6yXwDoFozKQICY26urv5zW2+u/DjvFSNm8k4a+QsWNGYeOsQb8zdvUV29ekXkTaNewYLGTNTxyrR+xEyZvvh6VJuYqQdemZ4apZjRunz99dfp/x+4bl119dK55ZW1znlMprdGtWabPv30U+ezBf18wQzNZHc7S9PTIHbsq6++8hyzG7fffnusjPnQvtr0crCHPEvTw6S6srLSs898gF9thoByzu/bt2/azzfMsE+ec1evXl1thmNyzj3ooIOqzQfynuN241//+lfs+d588027O7Y0H8I7x00DSWyfXdE6m+GnnON//vOfq01jjz0UW2q9zLBhThnTw6TaDOMUO6Yr7733Xuz+amx6iniOJ26YHiXVWrdUST8DMo1UzjX1vsmS1kXvpXXLlAYPHuyU1WViMo01sfezzTbbVC9cuDCxSPV///vfWJldd921zvHE+g8fPrxOGXU94IADnOdo3Lhx9c8//1ynjJ8dvn6GJFxIPdWqNutnbSQEii5AD5Cik3NDBIIh0LNnz2A8CE9RPwHt/fH+Hd5r9B1qen/s5N2Xhy1iJg+IZXaJgsbMkGtEHh4bF11SZXqBPCKy26/j+1gLnUBBYyZ0GjywHwFixo8SZdwCxIxbg3U/AmUXMyvMHAEjN/NDE50yV34v0qpj3uqj83K4k53kXOdiOProo92H5LjjjpNLLrlEzAfyTi+QG2+80XNce39oDwlNOteHXqtZs2aeMnZD57qwvUvsPj1Xr6HzUjz99NPONeyxxGWPHj08u7S8zhuivSP0vtrbJFk699xz5f7773d6Jzz88MMZh2lyX+OWW25xepdobxbTAJK0F4rW64477nCGgNKeGc8//7zoPZMl08jjzGeS7Jjdp3NspEvqfOWVVzrDUmkPDPN5ftLn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sdNPPz3W+KLXydSLZNy4caINLdmka665RrQhRJ9d65/4DO5r6Zwh6pqujLt8snXtcaFJGzl0iLLEpPc455xz6jgmlrMT0uvQVUuWLEk87Hv7/PPPd96PnnDRRRfJ4sWL65yrjUMPPFDz/5pdd91Vdtlllzpl2IEAAukFaABJ78NRBCIroP/w23/8I1vJKFbsA9P4sSqx98fVRakpMVMU5kjdpKgx08P8R2DzhDF8x99OL5CQRVRRYyZkNjxucgFiJrkLe1MLEDOpbTiSXICYSe7C3tQC2jvgqaeecgpstNFGstdee6Uu7DoycOBAsR+su3sgXHjhhbL//vs7JXXein79+sntt9/u9DDRXh3//e9/5c9//rMzP8i//vUv1xVFdthhB/nLX/7i7Js6dapz7h/+8Ad555135LPPPpNRo0bJbbfdJoMGDYoNu2UvoEM0aSOBLrXnyT777COnnHKK6DwaH3/8sdNjQSd513tvt912Tj2/+OILe7qvpdbl5ptvdspqLwgd3umqq66SN954w+mxMmHCBMfy4osvdhpj9P52Dg9fN0godNxxxzn10d1nnnmmDBs2zLHQIa8eeeQR2W233Zz77bHHHglnejf1XWnShpvf/OY38sEHH8h3330Xy97Sqbe0/pdffrlT4PPPPxcd8uy+++5zhuDSxiRteDr00ENFG2Z0CLJ777039cU4ggACKQWYAyQlDQcQQACBgAmsWCiiw1+509ZHimy8jXsP6wiUr8AQMxfId2/H6798nukFYrqL73FJfB9rCCCAAAIIIIAAAggUUEDns/j++++dOxx11FGxb/hnuqX21NDyd911l+hcFdrI0L9/f+f8l19+WbRHhjY+aEPGpZdemulysePa4KHX1oYKbTy4/vrrnRwrULsyePDgxF0yYMAAp5FEGw4qKiqcHhjaCyNVatu2bapDKfdrXVq1auXUSYfbGjlypJOTnaCNAHb4qWTHM+3r3r273H333U4vDx0Ga8SIEU52n3f88cfLueeem3aOEG0MUhtt+HjyySed7L6G7f3j3pdq/cYbb5Rly5Y5713j5rzzzqtTtF27dk5jlDZokRBAIHsBeoBkb8YZ2Qn0NMX16waTTDbjkchKkytMHmvyX03ONG7PUFPmJZO1n6YOrqhL3db9pHoIaDfN+nTVrMetOTVXAR36apW7S2wDkSHFm/uD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EEAAAQQQQGCiCsQFEf+BdP9NkXbTH9qtSD0EEEAAAQQQQAABBBDongAXQLpnzZ4QQAABBBBAAAEEEECgvwVmZt3zT2P5b4283t/dpXcIIIAAAggggAACCCBQJcBPYFXpUIYAAggggAACCCCAAAKDJHBLNtj5tYy/BzJI42esCCCAAAIIIIAAAgg0SoALII06nAwGAQQQQAABBBBAAAEE3oHAhXrsm9nj93sH7fBQBBBAAAEEEEAAAQQQ6AMBLoD0wUGgCwgggAACCCCAAAIIINAXAjPUi3Oznuyq5QEtejVZ5bu1qEMxAggggAACCCCAAAII9EiACyA9gme3CCCAAAIIIIAAAggg0JcC+6pXD2Y9O0bLqxSfV6yvWFOxheIriisU9yt2VJAQQAABBBBAAAEEEECgDwX4I+h9eFDoEgIIIIAAAggggAACCPRM4GnteUPFOYqNFR/PQovC9FzhVjYigAACCCCAAAIIIIBAzwW4ANLzQ0AHEEAAAQQQQAABBBBAoM8EHld/fOFjG4V/4mqKYinFvIpnFPcprlNcoJiuICGAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIvDOB/wMqG8seay2KDAAAAABJRU5ErkJggg==\" width=\"800\">"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"dt = 10\n",
"t1 = 200\n",
"t2 = 100\n",
"v_prog = 16\n",
"dist = 8\n",
"\n",
"subprocess.run(\"./build/install/motion/bin/motion {} {} {} {} {}\".format(dt, t1, t2, v_prog, dist), shell=True)\n",
"df = pd.read_csv(\"output.csv\", index_col=\"Time\")\n",
"print(\"time to end point = {:.0f} ms\".format(df.index.max()))\n",
"print(\"time to max velocity = {:.0f} ms\".format((math.ceil(t1/dt) + math.ceil(t2/dt))*dt))\n",
"print(\"max velocity = {:.1f} ft/sec\".format(df['Velocity'].max()))\n",
"print(\"max acceleration = {:.1f} ft/sec^2\".format(df['Acceleration'].max()))\n",
"\n",
"ax = df.loc[:,['Velocity', 'Acceleration']].plot(figsize=(8, 4))\n",
"ax.grid(True, color='lightgray', linestyle='--', linewidth=0.6)"
]
},
{
"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.6.4"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment