Matplotlib mit Django Generic-Ansichten verwenden
Ich versuche, für jede Datenzeile in der Tabelle eine detaillierte Seite zu schreiben. Ich möchte aus den Daten jeder Zeile dynamisch für jede Seite ein Matplotlib-Diagramm erstellen.
Ich habe den Code mit einer normalen Ansicht versucht und es funktioniert. Bei Verwendung mit demdetail_view
Seite Das Bild wird als fehlerhafter Link angezeigt. Was soll ich in dieDetailView
Klasse, um das Diagramm für jede Seite zu generieren?
graph.py
:
def plotResults(request):
p=get_object_or_404(Read_alignment,pk=id)
x =[]
y=[]
x.append(p.start)
x.append(p.stop)
y.append(p.count)
y.append(p.count)
fig=plt.figure()
ax= fig.add_subplot(311)
ax.set_xlim(right=30)
ax.step(x,y,'-',where='post', label='post')
canvas = FigureCanvas(fig)
response= HttpResponse(mimetype='image/png')
canvas.print_png(response)
return response
url.py
:
url(r'^(?P<pk>\d+)/align/plotResults.pngviews.py
:
class AlignDetailView(DetailView):
model = Read_alignment
def get_queryset(self):
queryset= Read_alignment.objects.filter(chr__icontains=3l)
return queryset
def get_context_data(self, **kwargs):
context = super(AlignDetailView,self).get_context_data(**kwargs)
context['alignment'] = self.object
return context
Wie soll ich das Diagramm vorzugsweise ohne statische oder Medien-Tags mit der Vorlage verknüpfen? Ist es möglich, die Grafiken zu generieren, ohne die PNG-Bilder im statischen Ordner zu speichern?
,plotResults),
url(r'^(?P<pk>\d+)/align/views.py
:
class AlignDetailView(DetailView):
model = Read_alignment
def get_queryset(self):
queryset= Read_alignment.objects.filter(chr__icontains=3l)
return queryset
def get_context_data(self, **kwargs):
context = super(AlignDetailView,self).get_context_data(**kwargs)
context['alignment'] = self.object
return context
Wie soll ich das Diagramm vorzugsweise ohne statische oder Medien-Tags mit der Vorlage verknüpfen? Ist es möglich, die Grafiken zu generieren, ohne die PNG-Bilder im statischen Ordner zu speichern?
,AlignDetailView.as_view(), name='AlignDetailView'),
views.py
:
class AlignDetailView(DetailView):
model = Read_alignment
def get_queryset(self):
queryset= Read_alignment.objects.filter(chr__icontains=3l)
return queryset
def get_context_data(self, **kwargs):
context = super(AlignDetailView,self).get_context_data(**kwargs)
context['alignment'] = self.object
return context
Wie soll ich das Diagramm vorzugsweise ohne statische oder Medien-Tags mit der Vorlage verknüpfen? Ist es möglich, die Grafiken zu generieren, ohne die PNG-Bilder im statischen Ordner zu speichern?