В картографических визуализациях сетка параллелей и меридианов используется как опорная система координат, позволяющая визуально оценивать расстояния, углы и географическое положение объектов. В Vega и Vega-Lite эта сетка реализуется через механизм graticule — генерацию географической координатной решётки поверх проекций карты.
Graticule представляет собой набор линий постоянной широты и долготы:
Формально это дискретизация сферических координат с заданным шагом:
Такая структура позволяет строить равномерную сетку поверх любой картографической проекции.
В Vega graticule не является обычным набором данных пользователя — он генерируется системой на уровне геопространственного слоя.
Основной механизм — встроенный источник данных
graticule, который может быть подключён как любой другой
data-сет:
{
"data": {
"graticule": true
}
}
При включении этого режима Vega автоматически создаёт геометрию сетки в пределах проекции.
Одна из ключевых возможностей — управление плотностью линий через
параметр step.
{
"data": {
"graticule": {
"step": [10, 10]
}
}
}
Здесь:
Типичные значения:
[10, 10] — плотная сетка;[30, 30] — средняя детализация;[90, 45] — редкая сетка для обзорных карт.Graticule может быть ограничен географическими рамками:
{
"data": {
"graticule": {
"extent": [[-180, -85], [180, 85]]
}
}
}
Параметр extent задаёт прямоугольник в координатах
[minLon, minLat] — [maxLon, maxLat].
Это важно для:
В Vega-Lite работа с сеткой упрощена и интегрирована в объект
projection.
{
"projection": {
"type": "mercator",
"graticule": true
}
}
В этом режиме система автоматически:
Vega-Lite позволяет расширить конфигурацию graticule:
{
"projection": {
"type": "mercator",
"graticule": {
"step": [15, 15],
"extent": [[-180, -80], [180, 80]]
}
}
}
Здесь:
step управляет плотностью линий;extent ограничивает область генерации.Хотя graticule генерируется автоматически, в Vega можно управлять его визуальным представлением через mark-типы.
Типичный подход:
{
"marks": [
{
"type": "geoshape",
"from": {
"data": "graticule"
},
"encode": {
"enter": {
"stroke": {"value": "#ccc"},
"strokeWidth": {"value": 1}
}
}
}
]
}
Здесь graticule используется как источник геометрии, а не как абстрактная настройка.
Ключевые параметры визуального оформления:
stroke — цвет линий;strokeWidth — толщина;strokeDash — пунктир;opacity — прозрачность.Пример:
{
"stroke": {"value": "#888"},
"strokeWidth": {"value": 0.5},
"strokeDash": {"value": [4, 2]},
"opacity": {"value": 0.6}
}
Тонкая настройка особенно важна при наложении сетки на плотные картографические слои.
Graticule полностью зависит от выбранной проекции:
Сетка пересчитывается в реальном времени при изменении проекции.
При слишком малом шаге (step: [1, 1]) возникает:
Оптимальный диапазон зависит от масштаба:
Graticule часто используется как вспомогательный слой под основными данными:
Порядок слоёв критичен:
Это обеспечивает читаемость без конфликтов визуальных уровней.
Неправильный extent
Если не ограничить область, сетка может выходить за пределы видимой проекции и создавать лишнюю нагрузку.
Слишком плотный шаг
Избыточное количество линий приводит к визуальному «засорению» карты.
Несовместимость с проекцией
Некоторые кастомные проекции требуют ручной корректировки graticule, особенно при нестандартных трансформациях координат.
Graticule используется не только как декоративный элемент, но и как инструмент анализа:
В сложных аналитических дашбордах сетка часто служит базовым слоем, к которому «привязываются» все остальные визуализации.