Benutzern ermöglichen, Daten zu plotten/graphen

Ich mag die Unterstützung von Discourse für Inline-LaTeX zur Diskussion von Mathematik und Mermaid für Diagramme sehr, aber eine Sache, die mir gefehlt hat, war die Möglichkeit, kleine Datenmengen zu nehmen und sie als x/y-Diagramme darzustellen – das Hineinfallen in eine Tabellenkalkulation und der Export eines PNGs ist mühsam. Aber nach einigem Anstarren des Quellcodes der Mermaid-Theme-Komponente hatte ich einige Erfolge beim Erstellen einer Theme-Komponente für plotly.js. Sie ist hier:

Sobald sie aktiviert ist, können Sie ein Streudiagramm wie folgt erstellen:

```plotly
data:
  - x: [0,300,400]
    y: [0,950,1050]
    name: Old mempool
  - x: [0,200,400]
    y: [0,700, 1150]
    name: New mempool
layout:
  title: Test plot
```

was ein Bild wie dieses ergibt:

Oder, vermutlich, jede der anderen Arten von Diagrammen, die Sie erstellen können, indem Sie Daten-/Layoutwerte an plotly.js übergeben.

Besonders schön ist, dass die Diagramme standardmäßig interaktiv sind, sodass Sie die tatsächlichen Werte von Punkten durch Hovern sehen, hinein- und herauszoomen und ein PNG speichern können. Und natürlich sind die Rohdaten auch im Quelltext des Beitrags vorhanden.

Ich habe es noch nicht live eingesetzt, daher kann ich nur sagen, dass es in einer Testumgebung zu funktionieren scheint; aber ich wollte es frühzeitig teilen, insbesondere falls jemand die Wartung für mich übernehmen möchte… :slight_smile: (Auch, wenn es einen besseren Weg gibt, dies zu tun, den ich irgendwie übersehen habe, würde ich mich freuen, davon zu erfahren, bevor ich noch mehr Zeit damit verschwende…)

(Das minifizierte Plotly JS ist über 4 MB groß, daher müssen Sie wahrscheinlich die Einstellung “maximale Anhangsgröße” auf 5 MB erhöhen, damit es funktioniert?)

9 „Gefällt mir“

Das ist toll, gute Arbeit!

Wenn Sie bereit sind, dies in der Produktion auszuführen, posten Sie es bitte unter der Kategorie Theme component. Wir würden dies gerne neben der Mermaid-Komponente sehen. (Beachten Sie auch, dass wir ein Graphviz-Plugin haben, das etwas Ähnliches tut.)

Und auch Plotly hat eine lebendige Community, sie würden das auch gerne erfahren:

6 „Gefällt mir“