From a99befa840761ad1f341dd6cacecfacfabca1d06 Mon Sep 17 00:00:00 2001
From: Tim Hoffmann <2836374+timhoffm@users.noreply.github.com>
Date: Sun, 12 Sep 2021 09:12:49 +0200
Subject: [PATCH] Backport PR #20867: "inner" index reorganization
---
.github/FUNDING.yml | 2 +-
doc/_static/mpl.css | 8 ++
doc/_templates/cheatsheet_sidebar.html | 9 ++
doc/_templates/donate_sidebar.html | 6 +-
doc/_templates/mpl_nav_bar.html | 24 +++++
doc/_templates/sidebar_versions.html | 9 --
doc/conf.py | 8 +-
doc/contents.rst | 9 +-
doc/faq/index.rst | 6 +-
doc/index.rst | 122 +++++++++++++++++++------
doc/users/backmatter.rst | 11 +++
doc/users/explain.rst | 10 ++
doc/users/fonts.rst | 8 +-
doc/users/index.rst | 29 +++---
examples/user_interfaces/test.bmp | Bin 0 -> 800054 bytes
requirements/doc/doc-requirements.txt | 7 +-
16 files changed, 198 insertions(+), 70 deletions(-)
create mode 100644 doc/_templates/cheatsheet_sidebar.html
create mode 100644 doc/_templates/mpl_nav_bar.html
create mode 100644 doc/users/backmatter.rst
create mode 100644 doc/users/explain.rst
create mode 100644 examples/user_interfaces/test.bmp
diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml
index 2bef7ab95a56..5c9afed3c02b 100644
--- a/.github/FUNDING.yml
+++ b/.github/FUNDING.yml
@@ -1,3 +1,3 @@
# These are supported funding model platforms
-github: [numfocus]
+github: [matplotlib, numfocus]
custom: https://numfocus.org/donate-to-matplotlib
diff --git a/doc/_static/mpl.css b/doc/_static/mpl.css
index 88c620d559e8..b5ac4b6ddd3a 100644
--- a/doc/_static/mpl.css
+++ b/doc/_static/mpl.css
@@ -212,3 +212,11 @@ table.property-table th,
table.property-table td {
padding: 4px 10px;
}
+
+.donate-button {
+ margin: 1em 0;
+}
+
+.sphinxsidebarwrapper {
+ margin: 0 1em;
+}
diff --git a/doc/_templates/cheatsheet_sidebar.html b/doc/_templates/cheatsheet_sidebar.html
new file mode 100644
index 000000000000..615c2bc4cd04
--- /dev/null
+++ b/doc/_templates/cheatsheet_sidebar.html
@@ -0,0 +1,9 @@
+
+
diff --git a/doc/_templates/donate_sidebar.html b/doc/_templates/donate_sidebar.html
index fc7310b70088..02d5ff6fc46c 100644
--- a/doc/_templates/donate_sidebar.html
+++ b/doc/_templates/donate_sidebar.html
@@ -1,6 +1,8 @@
-
-
-
diff --git a/doc/conf.py b/doc/conf.py
index 00f7ed7c5ea2..77b879d6f371 100644
--- a/doc/conf.py
+++ b/doc/conf.py
@@ -71,12 +71,15 @@
'sphinxext.skip_deprecated',
'sphinxext.redirect_from',
'sphinx_copybutton',
+ 'sphinx_panels',
]
exclude_patterns = [
'api/prev_api_changes/api_changes_*/*',
]
+panels_add_bootstrap_css = False
+
def _check_dependencies():
names = {
@@ -312,8 +315,9 @@ def _check_dependencies():
"url": "https://twitter.com/matplotlib/",
"icon": "fab fa-twitter-square",
},
-
],
+ "show_prev_next": False,
+ "navbar_center": ["mpl_nav_bar.html"],
}
include_analytics = False
if include_analytics:
@@ -341,8 +345,10 @@ def _check_dependencies():
# Custom sidebar templates, maps page names to templates.
html_sidebars = {
"index": [
+ 'search-field.html',
# 'sidebar_announcement.html',
"sidebar_versions.html",
+ "cheatsheet_sidebar.html",
"donate_sidebar.html",
],
# '**': ['localtoc.html', 'pagesource.html']
diff --git a/doc/contents.rst b/doc/contents.rst
index 37fd17172ce2..f9d10936c7fc 100644
--- a/doc/contents.rst
+++ b/doc/contents.rst
@@ -1,4 +1,4 @@
-
+.. _complete_sitemap:
Contents
========
@@ -15,13 +15,10 @@ Contents
:maxdepth: 2
users/installing.rst
- plot_types/index.rst
- gallery/index.rst
- tutorials/index.rst
- api/index.rst
users/index.rst
+ users/backmatter.rst
devel/index.rst
- Third-party packages
+ users/release_notes.rst
.. only:: html
diff --git a/doc/faq/index.rst b/doc/faq/index.rst
index def68fc84c71..bb477de21f0e 100644
--- a/doc/faq/index.rst
+++ b/doc/faq/index.rst
@@ -1,8 +1,8 @@
.. _faq-index:
-##################
-The Matplotlib FAQ
-##################
+######
+How-to
+######
.. only:: html
diff --git a/doc/index.rst b/doc/index.rst
index 3b18def1db3c..9d77ba0a4d39 100644
--- a/doc/index.rst
+++ b/doc/index.rst
@@ -4,41 +4,109 @@
.. module:: matplotlib
-Matplotlib documentation
-------------------------
-Release: |release|
+Matplotlib |release| documentation
+----------------------------------
Matplotlib is a comprehensive library for creating static, animated,
and interactive visualizations in Python.
-Learn
-=====
-
-- :doc:`Quick-start Guide `
-- Basic :doc:`Plot Types ` and :doc:`Example Gallery `
-- `Introductory Tutorials <../tutorials/index.html#introductory>`_
-- :doc:`External Learning Resources `
-
-Reference
-=========
+Installation
+============
-- :doc:`API Reference `
+.. panels::
+ :card: + install-card
+ :column: col-lg-6 col-md-6 col-sm-12 col-xs-12 p-3
- - :doc:`pyplot API `: top-level interface to create
- Figures (`.pyplot.figure`) and Subplots (`.pyplot.subplots`,
- `.pyplot.subplot_mosaic`)
- - :doc:`Axes API ` for *most* plotting methods
- - :doc:`Figure API ` for figure-level methods
+ Installing using `conda `__
+ ^^^^^^^^^^^^^^^^^^^^^^
-How-tos
-=======
-- :doc:`Installation Guide `
-- :doc:`Contributing to Matplotlib `
-- :doc:`Matplotlib FAQ `
-Understand how Matplotlib works
-===============================
+ .. code-block:: bash
-- Many of the :doc:`Tutorials ` have explanatory material
+ conda install matplotlib
+
+ ---
+
+ Installing using `pip `__
+ ^^^^^^^^^^^^^^^^^^^^
+
+
+ .. code-block:: bash
+
+ pip install matplotlib
+
+
+Further details are available in the :doc:`Installation Guide `.
+
+
+Learning resources
+==================
+
+
+.. panels::
+
+ Tutorials
+ ^^^^^^^^^
+
+ - :doc:`Quick-start Guide `
+ - :doc:`Plot Types `
+ - `Introductory Tutorials <../tutorials/index.html#introductory>`_
+ - :doc:`External Learning Resources `
+
+ ---
+
+ How-tos
+ ^^^^^^^
+ - :doc:`Example Gallery `
+ - :doc:`Matplotlib FAQ `
+
+ ---
+
+ Understand how Matplotlib works
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+ - The :ref:`users-guide-explain` section of the :doc:`Users guide `
+ - Many of the :ref:`Intermediate ` and
+ :ref:`Advanced ` Tutorials
+ have explanatory material
+
+ ---
+
+ Reference
+ ^^^^^^^^^
+
+ - :doc:`API Reference `
+ - :doc:`Axes API ` for *most* plotting methods
+ - :doc:`Figure API ` for figure-level methods
+ - Top-level interfaces to create:
+
+ - Figures (`.pyplot.figure`)
+ - Subplots (`.pyplot.subplots`, `.pyplot.subplot_mosaic`)
+
+
+
+Third-party packages
+--------------------
+
+There are many `Third-party packages
+`_ built on top of and extending
+Matplotlib.
+
+
+Contributing
+------------
+
+Matplotlib is a community project maitained for and by its users. There are many ways
+you can help!
+
+- Help other users `on discourse `__
+- report a bug or request a feature `on GitHub `__
+- or improve the :ref:`documentation and code `
+
+
+Site map
+--------
+
+The :ref:`complete contents of the docs `.
diff --git a/doc/users/backmatter.rst b/doc/users/backmatter.rst
new file mode 100644
index 000000000000..8d9fc0407d6f
--- /dev/null
+++ b/doc/users/backmatter.rst
@@ -0,0 +1,11 @@
+
+Project Information
+-------------------
+
+.. toctree::
+ :maxdepth: 1
+
+ license.rst
+ ../citing.rst
+ credits.rst
+ history.rst
diff --git a/doc/users/explain.rst b/doc/users/explain.rst
new file mode 100644
index 000000000000..d9d7a8474dbb
--- /dev/null
+++ b/doc/users/explain.rst
@@ -0,0 +1,10 @@
+.. _users-guide-explain:
+
+Explanations
+------------
+
+.. toctree::
+ :maxdepth: 1
+
+ interactive.rst
+ fonts.rst
diff --git a/doc/users/fonts.rst b/doc/users/fonts.rst
index e385c98284c0..1b9861df7414 100644
--- a/doc/users/fonts.rst
+++ b/doc/users/fonts.rst
@@ -1,16 +1,16 @@
-Fonts in Matplotlib Text Engine
+Fonts in Matplotlib text engine
===============================
Matplotlib needs fonts to work with its text engine, some of which are shipped
alongside the installation. However, users can configure the default fonts, or
-even provide their own custom fonts! For more details, see :doc:`Customizing
+even provide their own custom fonts! For more details, see :doc:`Customizing
text properties `.
However, Matplotlib also provides an option to offload text rendering to a TeX
engine (``usetex=True``),
see :doc:`Text rendering with LaTeX `.
-Font Specifications
+Font specifications
-------------------
Fonts have a long and sometimes incompatible history in computing, leading to
different platforms supporting different types of fonts. In practice, there are
@@ -40,7 +40,7 @@ fonts', more about which is explained later in the guide):
NOTE: Adobe will disable support for authoring with Type 1 fonts in
January 2023. `Read more here. `_
-Special Mentions
+Special mentions
^^^^^^^^^^^^^^^^
Other font specifications which Matplotlib supports:
diff --git a/doc/users/index.rst b/doc/users/index.rst
index c4ec864df787..32d70d3537fe 100644
--- a/doc/users/index.rst
+++ b/doc/users/index.rst
@@ -1,23 +1,24 @@
.. _users-guide-index:
-############
-User's guide
-############
+###########
+Usage Guide
+###########
.. only:: html
:Release: |version|
:Date: |today|
+
+
+
.. toctree::
- :maxdepth: 2
-
- interactive.rst
- fonts.rst
- release_notes.rst
- license.rst
- ../citing.rst
- ../resources/index.rst
- ../faq/index.rst
- credits.rst
- history.rst
+ :maxdepth: 2
+
+ ../plot_types/index.rst
+ ../tutorials/index.rst
+ ../gallery/index.rst
+ explain.rst
+ ../faq/index.rst
+ ../api/index.rst
+ ../resources/index.rst
diff --git a/examples/user_interfaces/test.bmp b/examples/user_interfaces/test.bmp
new file mode 100644
index 0000000000000000000000000000000000000000..ae58370451a8e036ff214bef4c9cd1b17533aa7a
GIT binary patch
literal 800054
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
RfB*y_009U<00K1=`2TKqI1B&)
literal 0
HcmV?d00001
diff --git a/requirements/doc/doc-requirements.txt b/requirements/doc/doc-requirements.txt
index 2cfba0dbad07..8be10d4d107c 100644
--- a/requirements/doc/doc-requirements.txt
+++ b/requirements/doc/doc-requirements.txt
@@ -12,12 +12,13 @@ colorspacious
ipython
ipywidgets
numpydoc>=0.8
-pydata-sphinx-theme>=0.5.0
+pydata-sphinx-theme>=0.6.0
sphinxcontrib-svg2pdfconverter>=1.1.0
-# sphinx-gallery>=0.7
-# b41e328 is PR 808 which adds the image_srcset directive. When this is
+# sphinx-gallery>=0.7
+# b41e328 is PR 808 which adds the image_srcset directive. When this is
# released with sphinx gallery, we can change to the last release w/o this feature:
# sphinx-gallery>0.90
git+git://github.com/sphinx-gallery/sphinx-gallery@b41e328#egg=sphinx-gallery
sphinx-copybutton
+sphinx-panels
scipy