Skip to content
Surf Wiki
Save to docs
general/articles-with-example-python-programming-language-code

From Surf Wiki (app.surf) — the open knowledge base

Matplotlib

Library for creating visualizations in Python

Matplotlib

Library for creating visualizations in Python

FieldValue
nameMatplotlib
logoMatplotlib logo.svg
logo size300px
screenshotFile:Mpl screenshot figures and code.png
captionScreenshot of Matplotlib plots and code
authorJohn D. Hunter
developerMichael Droettboom, et al.
released
latest release version
latest release date
engineCairo, Anti-Grain Geometry
programming languagePython
operating systemCross-platform
genrePlotting
licenseMatplotlib license
website

Matplotlib (portmanteau of MATLAB, plot, and library) is a plotting library for the Python programming language and its numerical mathematics extension NumPy. It provides an object-oriented API for embedding plots into applications using general-purpose GUI toolkits like Tkinter, wxPython, Qt, or GTK. There is also a procedural "pylab" interface based on a state machine (like OpenGL), designed to closely resemble that of MATLAB, though its use is discouraged. SciPy makes use of Matplotlib.

Matplotlib was originally written by John D. Hunter. Since then it has had an active development community and is distributed under a BSD-style license. Michael Droettboom was nominated as matplotlib's lead developer shortly before John Hunter's death in August 2012 and was further joined by Thomas Caswell. Matplotlib is a NumFOCUS fiscally sponsored project.

Usage

Matplotlib is used in scientific research as a tool for data visualization. For example, the Event Horizon Telescope collaboration used Matplotlib to produce visualizations during the effort to create the first image of a black hole. Matplotlib also underpins the plotting functionality of many scientific Python libraries (for instance, pandas uses Matplotlib as its default backend for plotting). Its importance to the scientific community has been acknowledged by institutions such as NASA, which in 2024 awarded a grant to support Matplotlib’s continued development as part of an initiative to fund widely used open-source scientific software.

A scatter plot created in Jupyter Notebook using Matplotlib

In education and data science, Matplotlib is frequently used to teach programming and data visualization. It integrates with Jupyter Notebook, allowing students and instructors to generate inline plots and interactively explore data within a notebook environment. Many educational institutions incorporate Matplotlib into their curricula for teaching STEM concepts, and it is widely featured in tutorials, workshops, and open online courses as a primary plotting library.

References

References

  1. "Copyright Policy".
  2. "History — Matplotlib 3.9.2 documentation".
  3. "API Overview". matplotlib.org.
  4. "Matplotlib github stats". matplotlib.org.
  5. "Announcing Michael Droettboom as the lead Matplotlib developer". matplotlib.org.
  6. (2017-10-05). "Matplotlib Lead Developer Explains Why He Can't Fix the Docs—But You Can – NumFOCUS". NumFOCUS.
  7. "Credits – Matplotlib 2.2.2 documentation".
  8. "NumFOCUS Sponsored Projects". NumFOCUS.
  9. "Case Study: First Image of a Black Hole".
  10. "NASA Funds Open-Source Software Underpinning Scientific Innovation".
  11. (18 September 2018). "Interactive notebooks: Sharing the code". Nature.
  12. "Pyplot tutorial".
Info: Wikipedia Source

This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page.

Want to explore this topic further?

Ask Mako anything about Matplotlib — get instant answers, deeper analysis, and related topics.

Research with Mako

Free with your Surf account

Content sourced from Wikipedia, available under CC BY-SA 4.0.

This content may have been generated or modified by AI. CloudSurf Software LLC is not responsible for the accuracy, completeness, or reliability of AI-generated content. Always verify important information from primary sources.

Report