Implements implicit plotting using interval arithmetic. The interval arithmetic used here uses numpy and does not round up and hence is not accurate. But it is sufficient for plotting.
Examples: ```python plot_implicit(Eq(y**2, x**3 - x), (x, -5, 5), (y, -4, 4)) plot_implicit(y > 1 / x, (x, -5, 5), (y, -2, 2)) plot_implicit(y < 1 / tan(x), (x, -5, 5), (y, -2, 2)) plot_implicit(y >= 2 * sin(x) * cos(x), (x, -5, 5), (y, -2, 2)) plot_implicit(y <= x**2, (x, -3, 3), (y, -1, 5)) plot_implicit(Eq(x**2 + y**2, 3), (x, -4, 4), (y, -4, 4)) ``` The implicit plotting module presently supports the following functions in an expression. exp, log, sin, cos, tan, asin, acos, atan, floor, ceiling, Max, Min, sinh, cosh, tanh, asinh, acosh, atanh. Only integer powers and sqrt are supported presently. The plots does domain tracking and does not plot anything that is outside the domain of the function. You can merge this Pull Request by running: git pull https://github.com/catchmrbharath/sympy newinterval Or you can view, comment on it, or merge it online at: https://github.com/sympy/sympy/pull/1370 -- Commit Summary -- * Added interval arithmetic module * Added interval functions to experimental_lambdify * Added ImplicitSeries for implicit plotting * Added the matplotlib backend for implicit plotting * Added plot_implicit function * fixed square root and added comments * import fix in experimental_lambdify * Added NotImplemented error for functions that are not implemented * formatting changes * Added tests for plot_implicit -- File Changes -- M sympy/__init__.py (2) M sympy/plotting/__init__.py (2) M sympy/plotting/experimental_lambdify.py (33) A sympy/plotting/intervalmath/__init__.py (2) A sympy/plotting/intervalmath/interval_arithmetic.py (490) A sympy/plotting/intervalmath/lib_interval.py (377) A sympy/plotting/intervalmath/tests/test_interval_functions.py (290) A sympy/plotting/intervalmath/tests/test_intervalmath.py (173) M sympy/plotting/plot.py (164) M sympy/plotting/tests/test_plot.py (9) -- Patch Links -- https://github.com/sympy/sympy/pull/1370.patch https://github.com/sympy/sympy/pull/1370.diff --- Reply to this email directly or view it on GitHub: https://github.com/sympy/sympy/pull/1370 -- You received this message because you are subscribed to the Google Groups "sympy-patches" group. To post to this group, send email to sympy-patches@googlegroups.com. To unsubscribe from this group, send email to sympy-patches+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/sympy-patches?hl=en.