/GnomePlots

A graph plotting app for GNOME

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

Plots CI Translation status

Plots icon

Plots is a graph plotting app for GNOME. Plots makes it easy to visualise mathematical formulae. In addition to basic arithmetic operations, it supports trigonometric, hyperbolic, exponential and logarithmic functions, as well as arbitrary sums and products. It can display polar equations, and both implicit and explicit Cartesian equations.

Plots is designed to integrate well with the GNOME desktop and takes advantage of modern hardware using OpenGL, and currently supports OpenGL 3.3+.

Download on Flathub

Other Methods of Installation

We are looking for volunteers to help us make native packages of Plots for Fedora, Arch and other major distributions. It would be great if you could help either by packaging, or by getting the following into the official repositories.

Distribution Package Maintainer
Ubuntu PPA Archisman Panigrahi
Debian .deb installer Archisman Panigrahi
Arch AUR/AUR(git) Mubashshir
GNU Guix guix install gnome-plots Guix Community

Scroll down and click on a package name to download the .deb file from the PPA to use it in Debian.

You can also install with Python. Open a terminal in the repository and run

# python3 setup.py install

Note that this method does not currently install the icon, font or .desktop files. You can then run Plots using the plots command.

Screenshots

Screenshot of Plots, displaying sawtooth, square, and triangle waves Screenshot of Plots, displaying polar and implicit graphs Screenshot of Plots, displaying an implicit graph, a cosine, and variables with sliders, using the dark theme

Development

Pull requests are welcome! The following sections detail how to run or build the project. The dependencies are in the setup file and also the Flatpak requirements file.

Running from source

To run directly without installation, open a terminal in the root of the repository and run

$ python3 -m plots

Building the Flatpak

To generate the manifest for the python modules, download flatpak-pip-generator and run

$ python3 flatpak-pip-generator --requirements-file=flatpak-requirements.txt --no-build-isolation

It is only necessary to do this when flatpak-requirements.txt changes.

Then build and install the Flatpak using

$ flatpak-builder --user --install build --force-clean com.github.alexhuntley.Plots.json

Translations

Would you like to see Plots in your own language? We welcome translators' contributions to Plots.

We recommend you use Weblate.

When translating help files using Weblate, you have to create a new translation for each file. Do not forget index.page, as it is mandatory for the help files to work.

The .desktop file can be translated here.

The AppStream metainfo file (containing the title, summary and description used in GNOME Software, the Flathub Store, Apps for GNOME etc.) can be translated here.