{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "### Plotting from an analytic function expression\n", "\n", "#### Plot in cartesian coordinate system" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "Gnuplot\n", "Produced by GNUPLOT 5.0 patchlevel rc2 \n", "\n", "\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t \n", "\t \n", "\t\n", "\t\n", "\t \n", "\t \n", "\t\n", "\n", "\n", "\n", "\n", "\t\t\n", "\t\t-6\n", "\t\n", "\n", "\n", "\t\t\n", "\t\t-4\n", "\t\n", "\n", "\n", "\t\t\n", "\t\t-2\n", "\t\n", "\n", "\n", "\t\t\n", "\t\t 0\n", "\t\n", "\n", "\n", "\t\t\n", "\t\t 2\n", "\t\n", "\n", "\n", "\t\t\n", "\t\t 4\n", "\t\n", "\n", "\n", "\t\t\n", "\t\t 6\n", "\t\n", "\n", "\n", "\t\t\n", "\t\t 8\n", "\t\n", "\n", "\n", "\t\t\n", "\t\t-10\n", "\t\n", "\n", "\n", "\t\t\n", "\t\t-5\n", "\t\n", "\n", "\n", "\t\t\n", "\t\t 0\n", "\t\n", "\n", "\n", "\t\t\n", "\t\t 5\n", "\t\n", "\n", "\n", "\t\t\n", "\t\t 10\n", "\t\n", "\n", "\n", "\n", "\n", "\t\n", "\n", "\t\n", "\t\tx\n", "\t\n", "\n", "\n", "\t\n", "\t\tx*sin(x)\n", "\t\n", "\n", "\n", "\t\n", "\t\tMath function example\n", "\t\n", "\n", "\tx*sin(x)\n", "\n", "\n", "\n", "\t\n", "\t\tx*sin(x)\n", "\t\n", "\n", "\n", "\t\n", "\t\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\t\n", "\n", "\n", "\n", "\n", "\n" ], "text/plain": [ "# \"lines\", :lt => {:rgb=>\"blue\", :lw=>3}]>], @options=Hamster::Hash[:xrange => -10..10, :title => \"Math function example\", :xlabel => \"x*sin(x)\", :ylabel => \"x\"], @already_plotted=true, @cmd=\"plot \", @terminal=#>>" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "require 'pilot-gnuplot'\n", "include Gnuplot\n", "\n", "# To use gnuplot this way iRuby should be modified.\n", "# For some reason there are also problems with\n", "# svg's so I'm using png in all other examples.\n", "cartesian = Plot.new(\n", " ['x*sin(x)', with: 'lines', lt: { rgb: 'blue', lw: 3 }],\n", " xrange: -10..10,\n", " title: 'Math function example', \n", " ylabel: 'x',\n", " xlabel: 'x*sin(x)'\n", ")" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "#" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# github doesn't show svg so I inserted here a png too\n", "cartesian.to_png('cartesian.png')\n", "File.open('cartesian.png')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Plot in polar coordinate system" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "#" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "polar = Plot.new(\n", " ['abs(sin(3*t))', with: 'filledcurves', lt: { rgb: 'red' }],\n", " title: 'Plot in polar example',\n", " polar: true,\n", " samples: 500\n", ")\n", "polar.to_png('polar.png', size: [500, 500])\n", "File.open('polar.png')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Plot from a parametric function expression" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "#" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "parametric = Plot.new(\n", " ['1.5*cos(t) - cos(30*t), 1.5*sin(t) - sin(30*t)', title: 'Parametric curve', lw: 2],\n", " title: 'Parametric plot example',\n", " parametric: true,\n", " samples: 1000,\n", " xrange: -3..3,\n", " yrange: -3..3\n", ")\n", "parametric.to_png('parametric.png', size: [500, 500])\n", "File.open('parametric.png')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Ruby 2.1.2", "language": "ruby", "name": "ruby" }, "language_info": { "file_extension": "rb", "mimetype": "application/x-ruby", "name": "ruby", "version": "2.1.2" } }, "nbformat": 4, "nbformat_minor": 0 }