Notiz
Klicken Sie hier , um den vollständigen Beispielcode herunterzuladen
Demo der Parasitenachse #
Dieses Beispiel zeigt die Verwendung der Parasitenachse, um mehrere Datensätze in einem einzigen Diagramm darzustellen.
Beachten Sie, wie in diesem Beispiel par1 und par2 beide durch Aufrufen von erhalten werden
twinx()
, wodurch ihre x-Limits mit der x-Achse des Hosts verknüpft werden. Von dort aus verhalten sich diese beiden Achsen getrennt voneinander: Es können verschiedene Datensätze gezeichnet und die y-Grenzen separat angepasst werden.
Beachten Sie, dass dieser Ansatz die mpl_toolkits.axes_grid1.parasite_axes
'
host_subplot
and
' verwendet mpl_toolkits.axisartist.axislines.Axes
. Ein alternativer Ansatz mit den
parasite_axes
's
HostAxes
und
ParasiteAxes
ist das
Demo-Beispiel Parasite Axes . Ein alternativer Ansatz mit den üblichen Matplotlib-Subplots wird im Beispiel Multiple Yaxis With Spines gezeigt .
from mpl_toolkits.axes_grid1 import host_subplot
from mpl_toolkits import axisartist
import matplotlib.pyplot as plt
host = host_subplot(111, axes_class=axisartist.Axes)
plt.subplots_adjust(right=0.75)
par1 = host.twinx()
par2 = host.twinx()
par2.axis["right"] = par2.new_fixed_axis(loc="right", offset=(60, 0))
par1.axis["right"].toggle(all=True)
par2.axis["right"].toggle(all=True)
p1, = host.plot([0, 1, 2], [0, 1, 2], label="Density")
p2, = par1.plot([0, 1, 2], [0, 3, 2], label="Temperature")
p3, = par2.plot([0, 1, 2], [50, 30, 15], label="Velocity")
host.set_xlim(0, 2)
host.set_ylim(0, 2)
par1.set_ylim(0, 4)
par2.set_ylim(1, 65)
host.set_xlabel("Distance")
host.set_ylabel("Density")
par1.set_ylabel("Temperature")
par2.set_ylabel("Velocity")
host.legend()
host.axis["left"].label.set_color(p1.get_color())
par1.axis["right"].label.set_color(p2.get_color())
par2.axis["right"].label.set_color(p3.get_color())
plt.show()