Heim >Backend-Entwicklung >Python-Tutorial >Wie erstelle ich eine einheitliche Farbleiste für mehrere Matplotlib-Unterplots?

Wie erstelle ich eine einheitliche Farbleiste für mehrere Matplotlib-Unterplots?

Susan Sarandon
Susan SarandonOriginal
2024-12-20 07:49:09357Durchsuche

How to Create a Unified Colorbar for Multiple Matplotlib Subplots?

Erstellen einer einheitlichen Farbleiste für mehrere Unterplots

Das Erstellen von Unterplots mit einer gemeinsamen y-Achse ist eine häufige Aufgabe in Matplotlib. Das Hinzufügen eines einzelnen Farbbalkens zu mehreren Unterplots kann jedoch zu Inkonsistenzen und Fehlausrichtungen führen.

Um einen Farbbalken zu erstellen, der alle Unterplots umfasst, führen wir einen zusätzlichen Unterplot ein, der sich der Anzeige des Farbbalkens widmet. Die Achsen dieses Nebenplots sind deaktiviert, um zu verhindern, dass tatsächliche Daten angezeigt werden.

Hier ist ein modifizierter Codeausschnitt basierend auf der ursprünglichen Frage:

import numpy as np
import matplotlib.pyplot as plt

fig = plt.figure()
fig.subplots_adjust(wspace=0, hspace=0)

# Subplot 1
ax1 = fig.add_subplot(1, 3, 1)
plt.imshow(data1, extent=(-2, 2, -2, 2))  # Placeholder data

# Subplot 2
ax2 = fig.add_subplot(1, 3, 2, sharey=ax1)
plt.imshow(data2, extent=(-2, 2, -2, 2))  # Placeholder data

# Colorbar subplot
ax3 = fig.add_subplot(1, 3, 3)
ax3.axis('off')
cbar = plt.colorbar(ax=ax2)

plt.show()

Durch Platzieren der Farbleiste in einem eigenen Nebenplot stellen wir sicher, dass es unabhängig von den Datendiagrammen bleibt und eine konsistente Größe beibehält. Der Aufruf von subplots_adjust hilft, Platz für die Farbleiste zu schaffen und zu verhindern, dass sie sich mit den Unterplots überschneidet.

Diese Technik ermöglicht eine saubere und standardisierte Anzeige von Daten über mehrere Unterplots hinweg und sorgt so für eine bessere visuelle Darstellung der Daten und Dies erleichtert den Vergleich von Werten.

Das obige ist der detaillierte Inhalt vonWie erstelle ich eine einheitliche Farbleiste für mehrere Matplotlib-Unterplots?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn