Highcharts SVG Export von Python Server Side-Code
-
04-10-2019 - |
Frage
Ich bin mit reportlab in Python eine PDF Server-Seite zu machen.
Ich mag das Aussehen von highcharts Graphen. Aber ich bin den Aufbau einer pdf Server-Seite, die einige Diagramme enthalten muss. Die Server-Seite der grafischen Darstellung ( reportlab und matplotlib ) haben nicht annähernd so viel Auswahl für die Formatierung / Design.
Gibt es eine Möglichkeit ich eine Client-Seite Javascript grafische Darstellung Lösung führen kann ( highcharts ) von der Server-Seite?
Hier ist eine Post mit diesem Antrag und das ist, was sie sagte: Sie geben diese Java-Tool eine URL, in ihren internen WebKit Browser Brände, führt den JavaScript-Code und Dumps die gerenderte Seite zu PDF.
Ich bin auf der Suche nach Ressourcen auf, wie dies in Python erreicht werden könnte.
Lösung
-
Öffnen Sie einen Webbrowser auf dem Server.
-
Zeigen Sie mit dem Web-Browser auf einer vorgefertigten Seite, die geladen
highcharts
und macht Ihr Diagramm. -
Besorgen Sie sich die Ausgabe des Browsers.
-
senden, dass an einen Client.
Welche dieser Schritte scheint verwirrend?
Beachten Sie, dass diese langsamer deutlich sein wird als nur matplotlib
verwenden, weil Sie einen vollständigen Web-Browser starten müssen nur ein Diagramm zu machen. Ich hatte einen kurzen Blick auf die highcharts-Seite verlinkt und ich denke, Sie wahrscheinlich, dass in matplotlib reproduzieren könnte.
Andere Tipps
ich ähnliche Anforderungen an und könnte eine bestehende Lösung nicht finden, damit ich eine wenig Proof-of-Concept-Lösung hier .
Diese Umsetzung funktioniert, indem der Python-Prozess einen Knoten Subprozess erstellen zu müssen, dass der Verwendungs ??highchart-export-server
Knotenmodul, das wiederum erzeugt ein PhantomJS Beispiel das Diagramm zu machen. Einige russischen Puppen dort beteiligt, aber es macht den Job.