Hinweis
Zum Ende springen, um den vollständigen Beispielcode herunterzuladen.
Bihistogram#
So plotten Sie ein Bihistogramm mit Matplotlib.
import matplotlib.pyplot as plt
import numpy as np
# Create a random number generator with a fixed seed for reproducibility
rng = np.random.default_rng(19680801)
Daten generieren und ein Bihistogramm plotten#
Um ein Bihistogramm zu generieren, benötigen wir zwei Datensätze (jeweils ein Vektor von Zahlen). Wir werden beide Histogramme mit plt.hist() plotten und die Gewichte des zweiten auf negativ setzen. Wir generieren die Daten unten und plotten das Bihistogramm.
N_points = 10_000
# Generate two normal distributions
dataset1 = np.random.normal(0, 1, size=N_points)
dataset2 = np.random.normal(1, 2, size=N_points)
# Use a constant bin width to make the two histograms easier to compare visually
bin_width = 0.25
bins = np.arange(np.min([dataset1, dataset2]),
np.max([dataset1, dataset2]) + bin_width, bin_width)
fig, ax = plt.subplots()
# Plot the first histogram
ax.hist(dataset1, bins=bins, label="Dataset 1")
# Plot the second histogram
# (notice the negative weights, which flip the histogram upside down)
ax.hist(dataset2, weights=-np.ones_like(dataset2), bins=bins, label="Dataset 2")
ax.axhline(0, color="k")
ax.legend()
plt.show()