Heim >Backend-Entwicklung >Python-Tutorial >Wie teile ich einen einzelnen Farbbalken über mehrere Matplotlib-Unterplots hinweg?
Gemeinsamer Farbbalken für mehrere Unterplots in Matplotlib
Beim Erstellen mehrerer Unterplots in Matplotlib kann es wünschenswert sein, einen gemeinsamen Farbbalken für alle anzuzeigen die Plots, um ein einheitliches Farbschema und eine einheitliche Referenzierung zu gewährleisten. Dies kann besonders nützlich sein, wenn Sie die Werte und Muster in verschiedenen Unterdiagrammen vergleichen.
Das Dilemma
Ein häufiges Problem beim Teilen eines Farbbalkens ist die Autokorrelation der einzelnen Farbbalken Ändern der Größe, um sowohl den Plot als auch den Farbbalken innerhalb des Begrenzungsrahmens des Unterplots unterzubringen. Dies kann zu ungleichmäßig großen Unterdiagrammen führen, die inkonsistent erscheinen.
Lösung: Trennen der Farbleiste
Die Lösung für dieses Problem besteht darin, eine separate Achse für die Farbleiste zu erstellen. Diese Achse wird dann verwendet, um die Farbleiste unabhängig von den Plots anzuzeigen, was mehr Kontrolle über ihre Größe und Position gibt.
Um diesen Ansatz zu implementieren, folgen Sie diesen Schritten:
Hier ist ein Beispielcode, der dies demonstriert Der Ansatz:
import numpy as np import matplotlib.pyplot as plt fig, axes = plt.subplots(nrows=2, ncols=2) for ax in axes.flat: im = ax.imshow(np.random.random((10,10)), vmin=0, vmax=1) fig.subplots_adjust(right=0.8) cbar_ax = fig.add_axes([0.85, 0.15, 0.05, 0.7]) fig.colorbar(im, cax=cbar_ax) plt.show()
Dieser Code erstellt vier Unterplots und platziert einen einzelnen Farbbalken rechts neben den Unterplots, wie im nebenstehenden Bild gezeigt. Der Farbbalken teilt das Farbschema mit den Unterplots und seine Größe und Position sind unabhängig von den Unterplots.
Durch die Befolgung dieser Schritte ist es möglich, einen einzelnen Farbbalken effektiv über mehrere Unterplots hinweg zu teilen, wodurch Konsistenz gewährleistet und das Ergebnis verbessert wird Präsentation der Daten.
Das obige ist der detaillierte Inhalt vonWie teile ich einen einzelnen Farbbalken über mehrere Matplotlib-Unterplots hinweg?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!