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_subplotand ' verwendet mpl_toolkits.axisartist.axislines.Axes. Ein alternativer Ansatz mit den parasite_axes's HostAxesund ParasiteAxesist das Demo-Beispiel Parasite Axes . Ein alternativer Ansatz mit den üblichen Matplotlib-Subplots wird im Beispiel Multiple Yaxis With Spines gezeigt .

Demo-Parasiten-Achsen2
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()

Galerie generiert von Sphinx-Gallery