Permettere agli utenti di tracciare/illustrate i dati

Mi piace molto il supporto di Discourse per LaTeX inline per parlare di matematica e Mermaid per creare diagrammi, ma una cosa che mi è mancata è la possibilità di estrarre piccoli pezzi di dati e creare grafici x/y – passare a un foglio di calcolo ed esportare un png è una seccatura. Ma dopo aver dato un’occhiata al codice sorgente del componente tema di Mermaid, ho avuto un po’ di successo nel creare un componente tema per plotly.js. È qui:

Una volta abilitato, puoi creare un grafico a dispersione come:

```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
```

ottenendo un’immagine come

Oppure, presumibilmente, qualsiasi altro tipo di grafico che puoi creare passando valori di dati/layout a plotly.js.

Una cosa particolarmente interessante è che i grafici sono interattivi per impostazione predefinita, quindi puoi vedere i valori effettivi dei punti passando il mouse sopra, puoi ingrandire e ridurre e puoi salvare un png. E naturalmente, i dati grezzi sono presenti anche nel codice sorgente del post.

Non l’ho ancora distribuito in produzione, quindi posso solo dire che sembra funzionare in un ambiente di test; ma volevo condividerlo presto, soprattutto nel caso in cui qualcuno volesse prendersi la responsabilità di mantenerlo per me… :slight_smile: (Inoltre, se c’è un modo migliore per farlo che mi sia semplicemente sfuggito, sarei felice di scoprirlo prima di perdere altro tempo su questo…)

(Il plotly js minificato è di oltre 4 MB, quindi è necessario aumentare l’impostazione “dimensione massima dell’allegato” a 5 MB perché funzioni, credo?)

È una bella idea, ottimo lavoro!

Quando sarai pronto a utilizzarlo in produzione, per favore pubblicalo nella categoria #customizzazione:componente-tema. Mi farebbe piacere vederlo insieme al componente mermaid. (Nota che esiste anche un plugin graphviz che fa qualcosa di simile.)

Inoltre, plotly ha una comunità vivace, sarebbe felice di saperlo: