Es gibt zwei Achsen Panels, mit einem kleinen (in grauer Farbe) in einem großen (weiße Farbe).Matplotlib: Überstreichen Sie eine Linie über einem anderen Achsen-Panel
Mit dem folgenden Code erwarte ich, dass die blaue Linie über dem grauen kleinen Achsenpanel liegt, weil die blaue Linie einen lächerlich hohen Wert von zorder
hat. Aber es stellt sich heraus, dass dies nicht der Fall ist.
Das Ändern des zorder
des Patches des kleinen Bedienfelds hat keine Auswirkung.
Wenn habe ich den Hintergrund der kleinen Platte transparent zu sein (oder unsichtbar machen), dann die blaue Linie wird nicht blockiert erscheinen, aber diese Lösung ist nicht zufriedenstellend, da es Situationen geben kann, in denen IT ERFORDERLICH um den Hintergrund der kleinen Platte undurchsichtig zu halten.
Oder vielleicht eine solche Anforderung ist nicht auf einfache Weise erreichbar, wenn durch Implementierung der zorder
von Linien nur innerhalb der gleichen Achsen sinnvoll sind?
f = figure()
ax1 = f.add_axes([0.1,0.1,0.8,0.8], zorder=1)
ax2 = f.add_axes([0.3,0.2,0.5,0.4], zorder=2)
ax2.patch.set_facecolor('gray')
ax2.patch.set_zorder(-9999999)
ax1.plot([0,1], [0,1], zorder=99999999, color='blue')
ax2.plot([0,1], [0,3], zorder=-99999, color='red')
# New Edit:
# To make the problem more to the point, what if someone
# also wants the background of the big panel to be green
# (with the following command)? See the second figure.
ax1.patch.set_facecolor('green')
# This seems to mean that the small panel really has to
# somehow "insert" into the z-space between the big panel
# and the blue line.
Ja, das ist eine sehr clevere Lösung! Und ich stimme dir zu, dass es immer noch nicht ideal ist, besonders wenn eine wählerische Person die Hintergrundfarbe des großen Panels auf eine nicht-weiße (z. B. grüne) Farbe einstellen möchte. – FJDU
vorheriger Beitrag bearbeitet. Das sollte dich zum Laufen bringen. – Logic1
Ja, Ihre Lösung funktioniert, aber wenn das große Panel grün sein soll, wird die ganze Figur durch die Gesichtsfarbe der Figur grün und nicht nur das Panel. – FJDU