matplotlib/matplotlib · error · RuntimeError
'{backend}' is not a recognised backend name
Error message
'{backend}' is not a recognised backend name What it means
Error "'{backend}' is not a recognised backend name" thrown in matplotlib/matplotlib.
Source
Thrown at lib/matplotlib/backends/registry.py:369
gui = (self._BUILTIN_BACKEND_TO_GUI_FRAMEWORK.get(backend) or
self._backend_to_gui_framework.get(backend))
# Is backend "module://something"?
if gui is None and isinstance(backend, str) and backend.startswith("module://"):
gui = "unknown"
# Is backend a possible entry point?
if gui is None and not self._loaded_entry_points:
self._ensure_entry_points_loaded()
gui = self._backend_to_gui_framework.get(backend)
# Backend known but not its gui framework.
if gui == "unknown":
gui = self._get_gui_framework_by_loading(backend)
self._backend_to_gui_framework[backend] = gui
if gui is None:
raise RuntimeError(f"'{backend}' is not a recognised backend name")
return backend, gui if gui != "headless" else None
def resolve_gui_or_backend(self, gui_or_backend):
"""
Return the backend and GUI framework for the specified string that may be
either a GUI framework or a backend name, tested in that order.
This is for use with the IPython %matplotlib magic command which may be a GUI
framework such as ``%matplotlib qt`` or a backend name such as
``%matplotlib qtagg``.
This function only loads entry points if they have not already been loaded and
the backend is not built-in and not of ``module://some.backend`` format.
Parameters
----------
gui_or_backend : str or NoneView on GitHub (pinned to b379c1b69e)
When it happens
Trigger: Thrown at lib/matplotlib/backends/registry.py:369 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of matplotlib/matplotlib@b379c1b69e (2026-08-21).
Data as JSON: /api/errors/7e23504fa8a4a72b.
Report an issue: GitHub.