We’re applying to Google Season of Docs this year!
We welcome proposals for all things documentation, including but not at all limited to the project listed here. We strongly believe you’ve probably got a better handle on how to fix our docs than we do. Please start a new topic with your proposal and tag it
The current Matplotlib documentation entry paths as defined by the website are:
- Installation - user installation
- Documentation -
- Examples - gallery of code examples + pictures
- Tutorials - long form narrative documentation
- Contributing - developers guide
Project name: Develop Matplotlib Entry Paths
Matplotlib has a tremendous amount of documentation, including examples and tutorials that live inside the main source repository and longer tutorials that live in other repositories in the Matplotlib organization. This can lead to users having a hard time discovering the documentation most appropriated for their need. The aim of this project would be to define and organize paths through the docs for users, potentially consolidating or reorganizing content as needed and updating the web page to improve discoverability of paths.
Project name: Matplotlib Usage Guide Overhaul
Mentors: @story645, @tacaswell
Description: Matplotlib was primarily developed by scientists for scientific visualization, and modeled on scientific computation languages such as Matlab, but one of the fastest growing audiences for Matplotlib is data science practitioners. To address the needs of this audience, we propose overhauling the usage guide to be more welcoming to newcomers to scientific visualization.
The following topics might be more add to or more broadly explained in the guide:
- the visualization pipeline: data->transformation->chart 
- Matplotlib’s role in the pipeline , i.e. that it’s a low level library [7,2,3]
- assumptions matplotlib makes about the structure of the data, user, and task
- Matplotlib’s imperative architecture and how that differs from declarative libraries like ggplot 
- the relationship between matplotlib and libaries built on top, such as Pandas and Seaborn [5, 8, 9]
- terminology that can be confusing or is used inconsistently (ex norm and colormap on images, tickers/locators) 
- how to customize the plots created by libraries like Pandas and Seaborn
These topics, and the scope, are expected to change as the guide develops and we welcome suggestions by the technical writer on approaches for addressing this audience.
Paper: (email for copy)
J. D. Hunter, “Matplotlib: A 2D Graphics Environment,” in Computing in Science & Engineering, vol. 9, no. 3, pp. 90-95, May-June 2007.
-  https://infovis-wiki.net/wiki/Visualization_Pipeline
-  https://medium.com/@Elijah_Meeks/d3-is-not-a-data-visualization-library-67ba549e8520
-  https://towardsdatascience.com/a-comprehensive-guide-to-the-grammar-of-graphics-for-effective-visualization-of-multi-dimensional-1f92b4ed4149
-  https://scikit-learn.org/stable/tutorial/basic/tutorial.html
-  https://github.com/matplotlib/AnatomyOfMatplotlib
-  https://matplotlib.org/tutorials/introductory/lifecycle.html
-  https://matplotlib.org/tutorials/introductory/usage.html#sphx-glr-tutorials-introductory-usage-py
-  https://towardsdatascience.com/customizing-plots-with-python-matplotlib-bcf02691931f
-  https://towardsdatascience.com/a-step-by-step-guide-for-creating-advanced-python-data-visualizations-with-seaborn-matplotlib-1579d6a1a7d0