Возможность для пользователей строить графики и диаграммы данных

Мне очень нравится поддержка Discourse для inline-LaTeX при обсуждении математики и для Mermaid при создании диаграмм, но мне не хватало возможности брать небольшие фрагменты данных и строить по ним графики с осями X/Y — переход в электронную таблицу и экспорт PNG утомителен. Однако, после некоторого изучения исходного кода компонента темы Mermaid, я добился успеха в создании компонента темы для plotly.js. Он находится здесь:

После его включения вы можете построить точечный график следующим образом:

```plotly
data:
  - x: [0,300,400]
    y: [0,950,1050]
    name: Старый мемпул
  - x: [0,200,400]
    y: [0,700, 1150]
    name: Новый мемпул
layout:
  title: Тестовый график
```

что даст изображение, подобное этому:

Или, предположительно, любой из других типов графиков, которые можно создать, передав значения data/layout в plotly.js.

Особенно приятно то, что графики по умолчанию интерактивны: вы можете видеть фактические значения точек при наведении, приближать и отдалять масштаб, а также сохранять изображение в формате PNG. И, конечно же, исходные данные доступны в исходном коде сообщения.

Я ещё не развернул это в рабочей среде, поэтому могу сказать только, что оно, кажется, работает в тестовой среде; но я хотел поделиться этим заранее, особенно на случай, если кто-то захочет взять на себя поддержку проекта вместо меня… :slight_smile: (Также, если существует какой-то лучший способ сделать это, который я каким-то образом упустил, я буду рад узнать об этом, прежде чем тратить на это слишком много времени…)

(Минифицированный файл plotly.js весит более 4 МБ, поэтому, думаю, нужно увеличить настройку «максимальный размер вложения» до 5 МБ, чтобы это работало?)

Отличная работа, здорово!

Когда будете готовы запустить это в продакшн, пожалуйста, опубликуйте пост в категории #theme-component. Очень хотелось бы увидеть это рядом с компонентом mermaid. (Обратите также внимание, что у нас есть плагин Graphviz, который делает что-то подобное.)

Кроме того, у Plotly очень активное сообщество, и они тоже будут рады узнать об этом: