Я использую API Google Sheets из googleapis, чтобы получить электронную таблицу и ее диаграммы. Итак, у меня есть ChartSpec. Как можно использовать эту спецификацию для визуализации диаграммы в веб-приложении, например. с помощью API визуализации?
Вариант использования
Простое веб-приложение, написанное на HTML и JS, которое показывает все диаграммы из произвольной электронной таблицы. В идеальном сценарии диаграммы отображаются так же, как в электронных таблицах, поэтому я могу просматривать диаграммы без необходимости открывать электронную таблицу вручную.
- Пользователь выбирает электронную таблицу из списка предопределенных электронных таблиц (меню)
- Веб-приложение запрашивает актуальные данные для выбранной электронной таблицы из серверной части Node.js.
- Приложение Node.js получает все диаграммы в электронной таблице с помощью API Google Sheets.
- Приложение Node.js отвечает необходимыми данными
- Веб-приложение визуализирует диаграммы, которые в идеале должны быть интерактивными (например, с помощью API визуализации).
Проблема
У меня возникли проблемы с шагами 4 и 5. На шаге 3 я получаю ChartSpec, который, кажется, содержит всю информацию, кроме данных. Вместо данных есть просто ссылки на диапазоны в виде Объект ChartData.
Создание пользовательской реализации, которая получает все указанные данные, кажется чрезвычайно сложным. Даже если бы я создал его самостоятельно, я не знаю, как создавать визуализации на шаге 5.
Что я обнаружил и почему это не решение для меня? Существуют похожие вопросы и решения, которые используют Visualization API для запроса данных из электронной таблицы и их визуализации, например этот ответ. Почему это не решение для меня? Поскольку мои электронные таблицы создаются нетехническими людьми, которые не следуют никаким передовым методам, данные не могут быть легко запрошены с помощью Query API. В таблицах бардак. Графики создаются одними и теми же людьми, и они хотят настроить их под себя. Что мне нужно, так это показать уже существующие диаграммы без необходимости делать какой-либо код для диаграммы.