G2 — это набор управляемого данными графического синтаксиса визуализации с высоким уровнем взаимодействия для обычных статистических диаграмм.
После полугода крупномасштабного рефакторинга нижнего уровня и итераций разработки G2 4.0 наконец-то здесь. Будучи вторым выпуском основной версии G2 после официального выпуска G2 3.0 с открытым исходным кодом 22 ноября 2017 г., версия 4.0 по-прежнему придерживается первоначального намерения «создать основанную на данных графическую грамматику с высоким уровнем взаимодействия». грамматика, новый В то же время, функции, опыт, простота использования и гибкость продукта были всесторонне улучшены.
Совершенно новый 4.0
первое приветствиеволна звезд ~~~~
Строго говоря, это не рефакторинг, а масштабный рерайт, и мы построили новенькую Г2 снизу вверх, от кода до документации.
Полностью используйте TypeScript
Мы переписали G2 и все связанные с ним модули с помощью TypeScript и предоставилиПолный файл определения типа.
Модернизация двигателя чертежа, переключение нескольких двигателей
G — это простой в использовании, эффективный и мощный движок 2D-визуального рендеринга под AntV, который обеспечивает реализацию различных методов рендеринга, таких как Canvas и SVG.
С выпуском базового механизма рендеринга AntV G 4.0, Canvas и SVG перенесены в G2 4.0.Поддержка нескольких режимов рендеринга,частичное обновление,Расширенный опыт анимациии многие другие преимущества.
Представляем механизм обновления
В версиях до G2 процесс инициализации данных и обновления данных по сути одинаков, разница в том, что последнему необходимо очистить предыдущую графику, поэтому после обновления данных графические элементы создаются заново, что аналогично один перед обновлением данных.Графические элементы не могут быть связаны, что влияет на согласованность анимации и взаимодействий. Поэтому в версии 4.0 мы представили механизм обновления, в том числе:
- Обновление данных геометрии, для которого мы ввели понятие Элемент;
- Обновления компонентов визуализации.
Пример 1: После обновления данных на диаграмме графические элементы до обновления данных не уничтожаются, и мы по-прежнему можем работать с экземпляром Element, полученным до обновления.
Пример 2: добавление механизма обновления улучшает процесс обработки данных и обеспечивает основу для мелкозернистой анимации диаграмм. Для следующей динамической гистограммы при каждом обновлении данных элементы диаграммы, такие как текст оси координат Axis, графическая текстовая метка Label и геометрическая фигура Geomtry, могут настроить соответствующую анимацию на этапе обновления.
Обновление системы визуальных компонентов
В соответствии с требованиями каждого продукта в рамках AntV: G2, F2, G6 и L7 мы переработали компоненты диаграммы, чтобы сформировать систему визуальных компонентов с более сильными функциями, более высокими степенями свободы, лучшей масштабируемостью и ориентированностью на взаимодействие.На основе совместимости с функциями 3.x, который добавляет анимацию, ограниченные макеты и взаимодействия.
Адаптация легенды и текста оси | Адаптация системы координат всплывающей подсказки |
---|---|
Мощный модуль просмотра
Представление — это контейнер, который имеет независимый источник данных и может отображать несколько графиков. По сравнению с 3.x обязанности Chart и View в 4.0 претерпели некоторые изменения: View — это контейнер холста G2, отвечающий за управление дочерними Views, геометрическими маркерами и визуальными компонентами, тогда как Chart наследует View и непосредственно подвергается воздействию Простой в использовании портал, в версии 4.0 пользователи могут использовать View для разработки персонализированных графиков многомерного анализа данных в соответствии с их собственными бизнес-требованиями. Кроме того, мы также поддерживаем вложение видов и автоматическую компоновку компонентов.
Поддерживает автоматическую компоновку в различных сценариях: обновление данных, изменение размера диаграммы, преобразование системы координат, обновление положения компонентов диаграммы и т. д.
Совершенно новый синтаксис взаимодействия
G2 4.0 начинается, мы запускаем реализацию события со дна G 4.0, компонентный слой визуализации единый интерфейс и механизм события, геометрии слоя G2 расщепляет элемент для размещения новых интерактивных механизмов, когда это готово,Наконец-то открыта новая глава в грамматике взаимодействия.
Мы делим поведение взаимодействия на связи взаимодействия, и каждая связь взаимодействия состоит из объектов-триггеров и объектов обратной связи. Собирая и комбинируя объекты-триггеры и объекты обратной связи, мы можем создавать различные взаимодействия. Поведение и интерактивное поведение могут накладываться друг на друга.
Взяв в качестве примера графическое изображение при наведении мыши и графическое выделение, интерактивное поведение состоит из двух интерактивных ссылок:
- Взаимодействие 1: наведите указатель мыши на графический элемент, и этот графический элемент будет выделен.
- Взаимодействие 2: мышь выдвигается из графического элемента, и графический элемент возвращается в исходное состояние.
Из приведенного выше описания мы можем проанализировать объекты триггера, события триггера, объекты обратной связи и результаты каждой ссылки взаимодействия следующим образом:
Таким образом, мы можем использовать интерактивный синтаксис для сборки:
С помощью этого набора синтаксиса взаимодействия мы настроили расширенные варианты взаимодействия для сборки G2, что удобно для быстрого начала работы пользователей.
В будущем мы постараемся сделать грамматику взаимодействия более естественной, чтобы пользователи могли использовать ее более грамматически правильным образом.
мелкозернистая анимация
Благодаря внедрению механизма обновления конфигурация анимации G2 4.0 стала более тонкой.На основе оригинальной анимации геометрии пользователи также могут анимировать компоненты диаграммы (оси, аннотации и т. д.) и текстовые аннотации меток. В то же время мы также оптимизировали встроенные анимации для каждой геометрии.
Тема "Тьма"
На теме диаграммы G2 4.0 сделали обновление дизайна при добавлении «темной» темы.
Гибкий механизм расширения
В G2 4.0 переработан и унифицирован механизм расширения каждого основного модуля.По сравнению с версией 3.x обновлена степень детализации и механизм стал более гибким.Пользователи могут загружать необходимые функциональные модули по запросу на основе большинства основных модулей, в том числе пользовательские формы, темы, взаимодействие, компонент, анимация и т. д. Пожалуйста, прочитайте конкретное использованиеЦитирование по запросуруководство.
В дополнение к вышеуказанным изменениям мы также внесли множество оптимизаций в API,На основе максимальной совместимости с синтаксисом 3.x, который обеспечивает более удобное и понятное именование функций и более разумную структуру элементов конфигурации, а также реорганизует руководство и документацию по API. Добро пожаловать на официальный сайт G2 для получения более подробной информации.
Как обновить
Чтобы максимально упростить обновление, G2 4.0 поддерживает наибольшую степень совместимости, но все еще есть некоторые критические изменения, на которые необходимо обратить внимание, см.Руководство по обновлению G2 4.0.
наконец
Большое спасибо за ваше терпеливое чтение.Если вы заинтересованы в G2, вы можете следить за нами по следующим каналам:
- Гитхаб:github.com/antvis/g2
- Официальный сайт:g2.antv.vision/
Ссылки по теме