d3.geo: путь против проекции

В настоящее время я пытаюсь узнать, как использовать API d3.js для геопространственного отображения, но у меня возникают проблемы с пониманием того, как работает каждая часть визуализации. В чем разница между траекторией и проекцией?

Мое нынешнее понимание состоит в том, что d3.geo.path это координаты, которые я бы использовал, чтобы создать желаемую фигуру, и проекция больше соответствует линиям слоя, который я проецирую на мой объект SVG. Тем не менее, я не понимаю, что значит иметь проекцию по умолчанию (которая в случае d3.geo.path является albersUSA,

Продолжая этот вопрос, нужно ли мне свое json файлы для d3.json чтобы создать формы, которые я так желаю? Так что в случае карты США мне нужно найти все координаты онлайн и сохранить их в json файл, прежде чем я смогу создать правильный path объект?

Любая помощь приветствуется. Спасибо!

1 ответ

Решение

Проекция берет мировые координаты (например, что-то вроде 20 градусов на север, 5 градусов на юг) и преобразует их в координаты карты (например, 200 пикселей вправо, 10 пикселей вниз). Путь берет эти координаты карты и соединяет их так, что вы получаете линию (или серию линий). Проекция является функцией преобразования, тогда как путь заботится о реальном чертеже. Координаты задаются данными, которые вы передаете этим функциям.

На веб-сайте D3 есть примеры для рисования определенных "фигур", то есть стран или карт мира. Вы можете использовать JSON в этих примерах для своих собственных целей. Если вы хотите показать конкретные точки или фигуры, для которых вы не можете найти данные в другом месте, вам нужно будет предоставить свой собственный JSON.

Другие вопросы по тегам