61 lines
2.3 KiB
Markdown
61 lines
2.3 KiB
Markdown
# Plotter
|
||
|
||
## Application to plot functions in python 3.
|
||
|
||
### Info
|
||
An application to plot a function (points, piecewise or normal) using turtle graphics.
|
||
The application is structured in two modules: "graph.py" contains classes and functions for drawing while "plotter.py" is the GUI (tkinter) module that facilitates and speeds up the use.
|
||
graph.py is independent and can be used even without the graphical interface.
|
||
You can save the plot in svg format via [canvas2svg] (Link: http://wm.ite.pl/proj/canvas2svg/index.html).
|
||
|
||
### Instructions
|
||
graph.py:
|
||
|
||
* Import the module graph.py.
|
||
`import graph`
|
||
* Create a Cartesian plane instantiate an object "graph" by providing the lengths of the axes.
|
||
`plane = graph.graph(20,20)`
|
||
* Draw a function using the method draws providing a function, the interval in the domain, and color.
|
||
`plane.plot (lambda x: x**2-2*x+1, -10, 10, "#92182b")`
|
||
* Clean the graph.
|
||
`plane.clean()`
|
||
|
||
`Graph()` is subclass of turtle.Pen so you can use all the methods inherited.
|
||
|
||
plotter.py:
|
||
|
||
Normal:
|
||
|
||
* Enter the function in the first text box. Between the variable and the coefficients a * is not necessary.
|
||
Use `^` for exponentiation and `|` for the absolute value |f(x)|.
|
||
eg |cos(x)*1/2x|
|
||
* Enter the range of the function to print in the second box.
|
||
eg -10, 10
|
||
* Enter the color in the third box. A string with the name of the color, a tuple that contains RGB numbers, #RGB color in hex.
|
||
eg #a1a1a1
|
||
|
||
Defined by points:
|
||
|
||
* Insert the points of the function into a tuple of the form (x1, y2), (x2, y2).
|
||
eg (0,0), (1,2), (2,4), (3,-3)
|
||
* Enter the range of the function to print the second box.
|
||
eg -10,10
|
||
* Enter the color in the third box. A string with the name of the color, a tuple that contains RGB numbers, #RGB color in hex.
|
||
eg #a1a1a1
|
||
|
||
Piecewise:
|
||
|
||
* Enter the traits in a tuple type [f1(x), (range)], [f2(x), (range)].
|
||
eg [ (-x), (-100,0)], [(x), (0,100)]
|
||
* Enter the range of the function to print the second box.
|
||
eg -10.10
|
||
* Enter the color in the third box. A string with the name of the color, a tuple that contains RGB numbers or #RGB color in hex.
|
||
eg #a1a1a1
|
||
|
||
You can use all the functions and constants defined in `math` module.
|
||
|
||
### License
|
||
Dual licensed under the MIT and GPL licenses:
|
||
http://www.opensource.org/licenses/mit-license.php
|
||
http://www.gnu.org/licenses/gpl.html
|