Skip to main content

Backends for plotting with SymPy

Project description

Sympy Plotting Backends

PyPI version Conda Version Documentation Status Coverage

This module contains a few plotting backends that can be used with SymPy and Numpy. A backend represents the plotting library: it provides the necessary functionalities to quickly and easily plot the most common types of symbolic expressions (line plots, surface plots, parametric plots, vector plots, complex plots).

The following plotting libraries are supported: Matplolib, Plotly, Bokeh, K3D-Jupyter, Mayavi.

What's new in comparison to SymPy

On top of the usual plotting functions exposed by SymPy (plot, plot_parametric, plot3d, etc.), this module offers the capabily to:

  • use a different backend.
  • visualize discontinuities on 2D line plots.
  • plot_piecewise to visualize 2D line plots of piecewise functions with their discontinuities.
  • plot_vector to quickly visualize 2D/3D vector fields with quivers or streamlines.
  • plot_real_imag, plot_complex, plot_complex_list, plot_complex_vector to visualize complex functions.
  • plot_polar function.
  • plot_geometry to quickly visualize entities from the sympy.geometry module.
  • iplot function to create parametric-interactive plots using widgets (sliders, buttons, etc.).
  • plotgrid function, which replaces the PlotGrid class: it allows to combine multiple plots into a grid-like layout. It works with Matplotlib, Bokeh and Plotly.

Please, read the following documentation page to understand the differences between this module and sympy.plotting.

If you feel like some feature could be implemented, open an issue or create a PR.

Explore the Capabilities

Read the documentation to explore the capabilities before the installation, which is filled with examples.

Installation

SymPy Plotting Backends can be installed with pip or conda. By default, only basic plotting with Matplotlib will be installed:

pip install sympy_plot_backends

Or

conda install -c conda-forge sympy_plot_backends

To install the complete requirements in order to get interactive plots, bokeh, plotly, k3d, vtk, execute the following command:

pip install sympy_plot_backends[all]

Or:

conda install -c anaconda scipy notebook colorcet
conda install -c conda-forge adaptive
conda install -c conda-forge panel
conda install -c anaconda ipywidgets
conda install -c conda-forge ipympl
conda install -c bokeh ipywidgets_bokeh
conda install -c conda-forge k3d msgpack-python
conda install -c plotly plotly
conda install -c conda-forge vtk

Finally, if you are using zshell, the above pip command is going to fail. Use the following instead:

pip install "sympy_plot_backends[all]"

Warnings

Some backend comes with a memory cost. Since they require external libraries and/or open a server-process in order to visualize the data, memory usage can quickly rise if we are showing many plots. Keep an eye on you system monitor and act accordingly (close the kernels, restart the browser, etc.).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sympy_plot_backends-2.0.2.tar.gz (233.9 kB view hashes)

Uploaded Source

Built Distribution

sympy_plot_backends-2.0.2-py3-none-any.whl (176.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page