Należy interpolować swoje wartości rho
. Nie ma jednego sposobu, aby to zrobić, a "najlepsza" metoda zależy całkowicie od informacji a priori, którą powinieneś włączyć do interpolacji.
Zanim jednak przejdę do rantu w metodach interpolacji "czarnej skrzynki", radialna funkcja podstawowa (np. "Spline-splajn" jest szczególnym rodzajem funkcji radialnej) jest często dobrym wyborem. Jeśli masz miliony punktów, to realizacja będzie nieefektywne, ale jako punkt wyjścia:
import numpy as np
import matplotlib.pyplot as plt
import scipy.interpolate
# Generate data:
x, y, z = 10 * np.random.random((3,10))
# Set up a regular grid of interpolation points
xi, yi = np.linspace(x.min(), x.max(), 100), np.linspace(y.min(), y.max(), 100)
xi, yi = np.meshgrid(xi, yi)
# Interpolate
rbf = scipy.interpolate.Rbf(x, y, z, function='linear')
zi = rbf(xi, yi)
plt.imshow(zi, vmin=z.min(), vmax=z.max(), origin='lower',
extent=[x.min(), x.max(), y.min(), y.max()])
plt.scatter(x, y, c=z)
plt.colorbar()
plt.show()
zrobił kod akceptowane pracował dla Ciebie? Mam taki sam spis list, ale nie mogę go rozwiązać. – diffracteD