Plotly im Browser Responsive

mit matplotlib, NumPy, pandas, SciPy, SymPy und weiteren mathematischen Programmbibliotheken.
Antworten
PythonCodingFun
User
Beiträge: 49
Registriert: Mittwoch 22. September 2021, 14:01

Hallo liebe Community,

ich nutze für die Visualisierung von Daten Plotly (express) zudem nutze ich Flask als Back-End,, als (Web-)Template-Engine nutze ich Jinja2 was im Zusammenspiel funktioniert, nur habe ich ein Problem ich möchte das meine Plots Responsive sind. ich hbe mich ein wenig durch die Online-Docs und Beispiele geschlagen, aber irgenwie bekomme ich es nicht so hin.

Meine Schritte(gekürzt auf das wesentliche):
1. Zunächst erzeuge ich den (Line Polar) Plot

Code: Alles auswählen

fig = px.line_polar(skill_list, r='count', theta='time', line_close=True)

2. Im Controller sorge ich dafür das die auch dargestellt werden

Code: Alles auswählen

return render_template("index.html", fig1=json.dumps(fig1, cls=plotly.utils.PlotlyJSONEncoder)

3. in der HTML Seite wird nun der Plot dargestellt.

Code: Alles auswählen

<div id="plot">
           <div id="spiderweb"></div>
           </div>

{% block script %}
            <script src="{{ url_for('static', filename='js/lib/plotly-2.24.1.min.js') }}"></script>
            <script type="text/javascript">
            var layout = {title: 'Custom Locale',};

            var config = {responsive: true};

                Plotly.newPlot('spiderweb',{{ fig1 | safe }} , layout )
            </script>
        {% endblock %}

Leider übernimmt PlotlyJS weder das Layout noch die Responsive Option.

Was mache ich falsch ?

Über Hilfe würde ich mich sehr feuen :)
Antworten