mpl-scatter-density#
mpl-scatter-density erleichtert das Erstellen interaktiver Streudichtekarten aus großen Datenmengen.
Installation#
$ pipenv install mpl-scatter-density
Damit werden automatisch auch die Abhängigkeiten Numpy, Matplotlib und fast-histogram installiert.
Verwendungszweck#
Importe
[1]:
import matplotlib.pyplot as plt
import mpl_scatter_density
import numpy as np
Beispieldaten generieren
[2]:
N = 10000000
x = np.random.normal(4, 2, N)
y = np.random.normal(3, 1, N)
Es gibt im Wesentlichen zwei Verwendungszwecke für mpl-scatter-density:
projection='scatter_density'
ScatterDensityArtist
projection='scatter_density'
[3]:
fig = plt.figure()
ax = fig.add_subplot(1, 1, 1, projection="scatter_density")
ax.scatter_density(x, y)
ax.set_xlim(-5, 10)
ax.set_ylim(-5, 10)
fig.savefig("gaussian.png")
/Users/veit/.local/share/virtualenvs/python-311-6zxVKbDJ/lib/python3.11/site-packages/mpl_scatter_density/generic_density_artist.py:77: RuntimeWarning: All-NaN slice encountered
vmin = self._density_vmin(array)
/Users/veit/.local/share/virtualenvs/python-311-6zxVKbDJ/lib/python3.11/site-packages/mpl_scatter_density/generic_density_artist.py:82: RuntimeWarning: All-NaN slice encountered
vmax = self._density_vmax(array)

ScatterDensityArtist
Auch im vorhergehenden Beispiel wird ScatterDensityArtist
verwendet, ohne es jedoch direkt anzugeben. Im folgenden Beispiel fügen wir es explizit den Achsen hinzu:
[4]:
from mpl_scatter_density import ScatterDensityArtist
a = ScatterDensityArtist(ax, x, y)
ax.add_artist(a)
[4]:
<mpl_scatter_density.scatter_density_artist.ScatterDensityArtist at 0x10bc0f150>