Подтвердить что ты не робот

Разница между GeoJSON и TopoJSON

В чем разница между GeoJSON и TopoJSON и когда я буду использовать один над другим?

Описание описания TopoJSON на GitHub означает, что файлы TopoJSON на 80% меньше. Почему бы не просто использовать TopoJSON все время?

4b9b3361

Ответ 1

Если вам нужен размер файла или топология, используйте TopoJSON. Если вы не заботитесь об этом, используйте GeoJSON для простоты.

Основное преимущество TopoJSON - размер. Исключая избыточность и используя более эффективное целочисленное кодирование координат с фиксированной точностью, файлы TopoJSON часто на порядок меньше файлов GeoJSON. Второе преимущество файлов TopoJSON заключается в том, что кодирование топологии имеет полезные приложения, такие как упрощающее топологию упрощение (похожее на MapShaper) и автоматическое создание сетки (как в границах состояния-состояния в этот пример choropleth).

Эти преимущества приносят стоимость: более сложный формат файла. В JavaScript, например, youd обычно используют клиентскую библиотеку TopoJSON для преобразования TopoJSON в GeoJSON для использования со стандартными инструментами, такими как d3.geoPath. (В Python вы можете использовать topojson.py. Кроме того, целочисленный формат TopoJSON требует квантования координат, что означает, что он может ввести ошибку округления, если вы не осторожны. (См. Документацию для topojson -q.)

Для серверной обработки геометрий, не требующих топологии, GeoJSON, вероятно, является более простым выбором. В противном случае, если вам нужна топология или вы хотите отправить геометрию по проводу клиенту, используйте TopoJSON.

Ответ 2

TopoJSON идеально подходит для опрятных функций, которые "привязаны" друг к другу, например, к административным областям, но не помогают с более грязными или органическими данными. Если ваши данные являются просто точками, то TopoJSON вообще не помогает.

Ответ 3

Это зависит от многих соображений. Среди них следующие:

1) Характер (модель данных) функции или функций, которые вы хотели бы представлять 2) Любые атрибуты, которые вы хотели бы связать с этими функциями 3) Как вы хотите, чтобы эти функции отображались на странице (статический или динамический)

Однако это сложный вопрос, на который нужно ответить абстрактно. Что касается некоторых особенностей, если у вас есть непрерывный охват полигона или другая ситуация, когда функции разделяют границы, модель topojson позволяет использовать избыточность и коэффициент, который в модели.

Прочитайте документацию, проанализируйте примеры (например, bl.ocks.org), а затем получите некоторые данные и представите их как в геойзоне, так и в топожейсе и создайте свои собственные визуализации.