Zuvor hatte ich ein Problem mit der interference between multiple Matplotlib figures. Schließlich wurde ich auf ein Problem aufmerksam gemacht, das einige pyplot-Funktionen nicht an ihre Figur-Instanz anhängen, sondern in einigen anderen Figuren-Instanzen gerendert werden können, die parallel erzeugt werden. HierWie kann ich einer Figurinstanz eine Pyplot-Funktion hinzufügen?
ist einiger Beispiel-Code:
from django.http import HttpResponse
from numpy import arange, meshgrid
from matplotlib.mlab import bivariate_normal
def show_chart(request):
delta = 0.025
x = arange(-3.0, 3.0, delta)
y = arange(-2.0, 2.0, delta)
X, Y = meshgrid(x, y)
Z1 = bivariate_normal(X, Y, 1.0, 1.0, 0.0, 0.0)
Z2 = bivariate_normal(X, Y, 1.5, 0.5, 1, 1)
Z = 10.0 * (Z2 - Z1)
from matplotlib.pyplot import figure, contour
fig1 = figure(figsize=(4, 4), facecolor='white')
contour(X, Y, Z)
response = HttpResponse(content_type='image/png')
fig1.savefig(response, format='png')
fig1.clear()
return response
Die Kontur pyplot Funktion in dem obigen Beispiel kann in fig1 gemacht, aber gelegentlich auch in anderer Gestalt, die parallel erzeugt wird. Das ist sehr ärgerlich. Gibt es eine Möglichkeit, die Kontur-Pyplot-Funktion an fig1 anzuhängen?
Dies ist eine perfekte Antwort: Funktioniert wie ein Zauber und ich brauche nur die drei Zeichen "Axt" zu meiner Codebasis hinzuzufügen. Vielen Dank! – Meilo
danke. Wenn es "perfekt" ist, könntest du darüber nachdenken, es zu verbessern ;-). – bmu
Danke für die Antwort, sehr nützlich. –