Repository navigation
Description
There are a handful of gallery and tutorial examples that are missing thumbnails:

The examples lacking thumbnails should be updated so that either:
- A thumbnail is chosen from the example
- A thumbnail is manually set
And yes, it's understandable that some of these don't have thumbnails, but then maybe we need a different section in the docs for non-graphical examples?
This is an inventory assuming #17477 goes in & a later upgrade to sphinx 0.7.1
Tutorials missing thumbnails:
tutorials
Text
-
https://matplotlib.org/devdocs/tutorials/text/pgf.html#sphx-glr-tutorials-text-pgf-py DOC: Fix text tutorial thumbnails using sphinx_gallery_thumbnail_path #31224
-
https://matplotlib.org/devdocs/tutorials/text/usetex.html#sphx-glr-tutorials-text-usetex-py DOC: Fix text tutorial thumbnails using sphinx_gallery_thumbnail_path #31224
-
https://matplotlib.org/devdocs/users/explain/text/fonts.html DOC: Fix text tutorial thumbnails using sphinx_gallery_thumbnail_path #31224
Toolkits
- https://matplotlib.org/devdocs/tutorials/toolkits/axes_grid.html#sphx-glr-tutorials-toolkits-axes-grid-py
- https://matplotlib.org/devdocs/tutorials/toolkits/axisartist.html#sphx-glr-tutorials-toolkits-axisartist-py
- https://matplotlib.org/devdocs/tutorials/toolkits/mplot3d.html#sphx-glr-tutorials-toolkits-mplot3d-py
Examples missing thumbnails
animation
interactive
- https://matplotlib.org/devdocs/gallery/event_handling/ginput_manual_clabel_sgskip.html#sphx-glr-gallery-event-handling-ginput-manual-clabel-sgskip-py
- https://matplotlib.org/devdocs/gallery/event_handling/pong_sgskip.html#sphx-glr-gallery-event-handling-pong-sgskip-py
misc
- https://matplotlib.org/devdocs/gallery/misc/multipage_pdf.html#sphx-glr-gallery-misc-multipage-pdf-py DOC: Add thumbnail for multipage_pdf gallery example #31308
- https://matplotlib.org/devdocs/gallery/misc/ftface_props.html#sphx-glr-gallery-misc-ftface-props-py DOC: Add thumbnail for ftface_props gallery example #31321
- https://matplotlib.org/devdocs/gallery/misc/font_indexing.html#sphx-glr-gallery-misc-font-indexing-py
sgskip
- https://matplotlib.org/devdocs/gallery/misc/hyperlinks_sgskip.html#sphx-glr-gallery-misc-hyperlinks-sgskip-py
-
https://matplotlib.org/devdocs/gallery/misc/image_thumbnail_sgskip.html#sphx-glr-gallery-misc-image-thumbnail-sgskip-py - https://matplotlib.org/devdocs/gallery/misc/multiprocess_sgskip.html#sphx-glr-gallery-misc-multiprocess-sgskip-py
- https://matplotlib.org/devdocs/gallery/misc/print_stdout_sgskip.html#sphx-glr-gallery-misc-print-stdout-sgskip-py
- https://matplotlib.org/devdocs/gallery/mplot3d/wire3d_animation_sgskip.html#sphx-glr-gallery-mplot3d-wire3d-animation-sgskip-py
units
- https://matplotlib.org/devdocs/gallery/units/basic_units.html#sphx-glr-gallery-units-basic-units-py (this file should probably be omitted from the gallery listing)
All the Embedding examples
widgets #23441
Folks who are interested in working on this: we don't assign issues, and you can see a number of PRs attempted to solve parts of this issue before. I suggest taking a look and maybe outlining your strategy here in the issue before attempting a PR. Thanks!
Activity
larsoner commentedon May 21, 2020
Minor note, even the one that requires
ArtistAnimationwill have a thumbnail with that PR ("precomputed list of images"):https://37252-1385122-gh.circle-artifacts.com/0/doc/build/html/gallery/index.html#animation
So it's not dependent upon Sphinx-gallery 0.7.1, just the animation of the thumbnail EDIT: and embedding of the animation will be. Unless you're referring to a different example...
timhoffm commentedon May 21, 2020
Generally 👍, e.g. the embedding examples could show a screenshot.
Even though it's called "Gallery" in the section title, I consider them more broadly as "Examples" (as is the top-level menu navigation item pointing to the gallery).
With that interpretation, not every element in the gallery must have an image. Some times there is just no visualization and the default placeholder is fine, e.g. for https://matplotlib.org/devdocs/gallery/misc/font_indexing.html#sphx-glr-gallery-misc-font-indexing-py
story645 commentedon May 22, 2020
I think the ones that don't have pictures should maybe be moved to a different part of the docs - either integrated into a tutorial or maybe a section of the gallery that's explicit about it not being visual.
I think the placeholder ends up creating confusion (is this example broken?).
ImportanceOfBeingErnest commentedon May 22, 2020
timhoffm commentedon May 22, 2020
I consider the thumbnail as a nice but optional illustrative add-on, but not as the essence of the example.
(I would even be +0.5 on renaming "gallery" to "examples", the latter being more self-explanatory.)
story645 commentedon May 22, 2020
I think it's the key part of the example, especially because visualization nomenclature isn't remotely consistent so often the thumbnail is what folks are working off of to figure out if this example will do the thing they want. I also think one of things Matplotlib most has as an advantage is it's a visualization library so can have visual examples that show what effect code is supposed to have. One of the very frustrating parts of a lot of the examples is they get so boiled down in boilerplate that it can sometimes be hard to figure out which line of code is responsible for the important bit & the thumbnail helps signpost that.
So the gallery is renamed examples and has been for years (to the chagrin of some users), but that's almost a pedantic distinction given that there are like 627 examples of which maybe 30 are missing thumbnails. Except for widgets, there's no consistency in what's missing a thumbnail which is what makes the missing thumbnails look like an error. I have 0 issues with examples that don't provide a thumbnail if the examples can be reorganized such that it's clear that the choice was intentional.
This can be as simple as adding an explicit "code examples" section to the gallery or alternatively what about a "this is code" thumbnail - little picture of code, something similar that makes it clear it wasn't a sphinx autogen fail?
kritika12298 commentedon May 24, 2020
story645 commentedon May 24, 2020
Things that can be done for this issue:
The instructions for adding the images are listed above & the images should be as small as possible. For now add a folder to examples for thumbnails but expect it to be moved.
kritika12298 commentedon May 24, 2020
whereistejas commentedon May 24, 2020
kritika12298 commentedon May 24, 2020
story645 commentedon May 24, 2020
the docs are built same as the code & you're going to need the most current source code so please follow the instructions at https://matplotlib.org/devdocs/devel/index.html
timhoffm commentedon May 24, 2020
@story645
I did not check, but I assume our doc build would fail if the example did not run properly. (And disregarding that, it would be better if failing examples got a special thumbnail directly by sphinx gallery, e.g. a warning sign).
Overall, I'm not fundamentally opposed to a special non-plot thumbnail, I just don't think it's necessary.
72 remaining items
DOC: Make ftface_props example generate a font metrics figure
doc: add thumbnails for skipped gallery examples
timhoffm commentedon Apr 22, 2026
Incorrectly closed though #31365. Still some left to do.
timhoffm commentedon May 10, 2026
Looking at the results of #31308 and 31365 I think we should revise the approach.
It's nice that the gallery now has an image, but the example itself is still only wall of text. It would be nice to see the image also in the the example itself, so that one may have a better understanding what the result of the code is. For example the Embedding in Qt adds two toolbars one at the top, one at the bottom. That only becomes visible in the result.
To be checked: I assume sphinx-gallery can only create thumbnails from generated figures, not embedded images. In that case we should do everything manually:
.. image:or.. figurein the exampleAlso check whether one image is good for both or whether we should have different sizes for example and thumbnail.
ikejourney commentedon Jun 8, 2026
Hi, I'd like to help with this in small documentation-only chunks.
My proposed approach is:
sphinx_gallery_thumbnail_numberor asphinx_gallery_thumbnail_path, depending on whether the example already generates a suitable imageThe first target I would check is one of the still-listed
sgskipexamples undergallery/misc, such asfont_indexing.pyorprint_stdout_sgskip.py, because they look like isolated gallery/documentation changes. If that direction sounds reasonable, I'll open a small PR for one example first rather than trying to cover the full inventory at once.Add gallery thumbnails for examples missing them
harshitnagar22 commentedon Jul 2, 2026
Hey everyone! Just opened PR #31986 that covers the remaining examples from the checklist that still didn't have thumbnails. Would appreciate a review whenever someone gets a chance! 🙏
timhoffm commentedon Jul 3, 2026
@story645 on a side-note: Thumbnails are a nice extension, but I'd like to see the images also in the examples; e.g. here it would also be helpful to add a screenshot of theUI:
https://matplotlib.org/stable/gallery/user_interfaces/embedding_in_qt_sgskip.html
hemant2186 commentedon Jul 8, 2026
Hi! I'd like to work on one remaining documentation example for this issue.
I'll start with a single example (likely one of the remaining embedding/user interface examples) by adding an appropriate screenshot and thumbnail, then open a small PR for review.
Add sphinx_gallery_thumbnail_path for gallery examples missing thumbn…
kunjagarwal-dev commentedon Aug 1, 2026
"Hi ! I'm interested in working on this issue. I'm a beginner contributor. Could someone guide me on which tutorial still needs thumbnails and how to add them?"
melissawm commentedon Aug 3, 2026
Hi @kunjagarwal-dev - the most up-to-date examples gallery is here: https://matplotlib.org/devdocs/gallery/index.html
You can see the PRs that were linked to this issue and were merged for ideas on how to add the thumbnails (for example, #31365)
nj-codes-24 commentedon Aug 19, 2026
Hi! I'd like to work on this issue as one of my first open source contributions. I'll start with the
gallery/event_handling/pong_sgskip.pyexample — it looks like it doesn't have a linked PR yet. My plan is to add asphinx_gallery_thumbnail_path/sphinx_gallery_thumbnail_number(whichever fits) so it gets a proper thumbnail, following the pattern from the already-merged PRs (e.g. #31365). Will open a small, focused PR once it's ready. Let me know if this one's already spoken for!