A Python GUI application for interactive creation and editing of matplotlib figures.
- Edit matplotlib figures via a graphical interface.
- Adjust text labels, size, fonts, etc.
- Change colors of lines, text, symbols, etc.
- Adjust size of markers, lines
- And more!
- Save figures to a pickle file for use in other Python projects or to share (and load figures from a pickle file, too!).
- Use custom plugins to automate figure styling.
-
Open a terminal or command prompt.
-
Optionally, create a virtual environment.
-
Run the following command to install FigureForge:
pip install FigureForge
You may need to uninstall FigureForge before upgrading.
-
Start FigureForge from the terminal:
FigureForge
or from within a script:
import matplotlib.pyplot as plt import FigureForge fig, ax = plt.subplots() ax.plot([1,2,3,4],[1,4,9,16]) # Do edits with FigureForge... fig = FigureForge.run(fig) # Continue your script after FigureForge closes...
The documentation for FigureForge is available on the project's wiki -- it is still a work in progress, but in the meantime you might find the FAQ & Troubleshooting page helpful. Consider also creating a new issue, or ask a question in the discussions.
Obviously, FigureForge is still early in development. Correspondingly, there are many opportunities to implement features and fix bugs. If you want to pitch in, you are welcome to fork the project and make a pull request.
Truth be told, I am an aerospace engineer and not a software developer; I don't know how to develop professional software, but am doing my best - especially because FigureForge is solving one of my own problems. If you would like to contribute, I would be grateful. There is no formal development philosophy: I just recently learned that git tags are a thing. The closest thing to a development roadmap is this Kanban board, granted, these features are to some extent aspirational: FigureForge Project.
FigureForge is possible only because of the open source technologies and resources from which FigureForge stands on shoulders. Specifically, I wish to thank:
- The developers of matplotlib who are responsible for the very foundation of this project.
- The GUI framework for FigureForge is the Qt platform, specifically PySide6.
- The menu icons used in FigureForge were made by Google.
A unique function of FigureForge is its ability to work on matplotlib figures as part of any Python workflow. However, if you are looking for something more polished and are not so concerned with the serialization/data format of your figure, you might find the following projects of interest.