Географическая проекция

Географическая проекция преобразует долготу и широту в координаты x и y. В Vega-Lite она размещает как отдельные точки с географическими координатами, так и области из GeoJSON — например, страны или штаты. Проекция задаётся на уровне отдельного представления рядом с encoding. Затем поля сопоставляются с каналами longitude и latitude, а для фигур между границами доступны также longitude2 и latitude2.

В примере проекция albersUsa размещает аэропорты США по широте и долготе:

Другие географические примеры доступны в галерее Vega-Lite.

Содержание страницы

Свойства проекции

Свойство Тип Описание
type ProjectionType, ExprRef Картографическая проекция. Регистр не учитывается: например, "albers" и "Albers" обозначают один тип. Допустимые типы перечислены ниже.

По умолчанию: equalEarth.
center Vector2<number>, ExprRef Центр проекции: массив из двух элементов — долготы и широты в градусах.

По умолчанию: [0, 0].
clipAngle number, ExprRef Угловой радиус круга обрезки проекции в градусах. При null вместо обрезки по малому кругу используется разрез по антимеридиану.
clipExtent Vector2<Vector2<number>>, ExprRef Прямоугольная область обрезки окна проекции в пикселях: [[x0, y0], [x1, y1]], где x0 — левая, y0 — верхняя, x1 — правая, y1 — нижняя граница. При null обрезка по окну не выполняется.
fit Fit, Fit[], ExprRef Геометрия GeoJSON для подгонки проекции: объект Feature, FeatureCollection, массив Feature или массив таких определений.
parallels number[], ExprRef Для конических проекций — две стандартные параллели, определяющие компоновку карты. Значение по умолчанию зависит от выбранной конической проекции.
pointRadius number, ExprRef Радиус в пикселях для геометрий GeoJSON Point и MultiPoint по умолчанию. Задаёт постоянный радиус. Для изменения радиуса по данным см. соответствующий параметр преобразований GeoPath и GeoShape.

По умолчанию: 4.5.
precision number, ExprRef Порог адаптивного пересэмплирования проекции в пикселях; соответствует расстоянию в алгоритме Дугласа — Пекера. Если не задан, используется текущая точность проекции.

По умолчанию: √0.5 ≈ 0.70710….
rotate Vector2<number>, Vector3<number>, ExprRef Поворот по трём осям сферы: массив из двух или трёх чисел [lambda, phi, gamma], задающих углы в градусах (рыскание, тангаж и крен).

По умолчанию: [0, 0, 0].
scale number, ExprRef Коэффициент масштаба проекции, переопределяющий автоматическую подгонку. Стандартный масштаб зависит от проекции. Коэффициент линейно связан с расстояниями между спроецированными точками, но одинаковые значения не эквивалентны для разных проекций.
translate Vector2<number>, ExprRef Смещение проекции: массив из двух элементов [tx, ty].

Для подробного изучения параметров воспользуйтесь демонстрацией в документации проекций Vega.

Для отдельных видов проекций из библиотеки d3-geo-projection поддерживаются дополнительные параметры: coefficient, distance, fraction, lobes, parallel, radius, ratio, spacing и tilt.

Все свойства проекций необязательны; стандартные значения описаны в параметрах проекций Vega. Если проекция не указана явно, Vega-Lite добавляет её автоматически для примитива geoshape, поля типа geojson или каналов latitude и longitude.

Виды проекций

Vega-Lite включает следующие проекции библиотеки d3-geo:

Тип Описание
albers Равновеликая коническая проекция Альберса. Настройка "conicEqualArea", ориентированная на США.
albersUsa Составная проекция для 48 смежных штатов США, Гавайев и Аляски. Аляска показана с масштабом 0.35 относительно её истинной относительной площади.
azimuthalEqualArea Равновеликая азимутальная проекция.
azimuthalEquidistant Равноудалённая азимутальная проекция.
conicConformal Равноугольная коническая проекция. Стандартные параллели [30°, 30°] дают плоский верх.
conicEqualArea Равновеликая коническая проекция Альберса.
conicEquidistant Равноудалённая коническая проекция.
equalEarth Проекция Equal Earth, разработанная Бояном Шавричем и соавторами в 2018 году.
equirectangular Равнопромежуточная цилиндрическая проекция (plate carrée), подобная непосредственному использованию долготы и широты.
gnomonic Гномоническая проекция.
identity Тождественная проекция. Также поддерживает логические параметры reflectX и reflectY.
mercator Сферическая проекция Меркатора. Стандартный clipExtent даёт квадратную карту мира, обрезанную примерно по широтам ±85°.
orthographic Ортографическая проекция.
stereographic Стереографическая проекция.
transverseMercator Поперечная сферическая проекция Меркатора. Стандартный clipExtent даёт квадратную карту мира, обрезанную примерно по широтам ±85°.

Настройка проекции по умолчанию

// Спецификация представления верхнего уровня
{
  ...,
  "config": {          // Объект конфигурации
    "projection": { ... },   // - Конфигурация проекции
    ...
  }
}

Свойство projection объекта config определяет стандартные свойства и преобразования для разных видов проекций. Конфигурация может содержать любые свойства проекции, перечисленные выше.