Вам не потрібно перетворювати з SVG в GeoJSON, щоб використовувати зображення для хороплета в d3, хоча це може знадобитися для інших бібліотек.
Інформації про шлях до файлу SVG (має бути принаймні один шлях для кожного стану / країни / штату / підрозділу на вашій карті) достатньо для відображення даних для вашого SVG-зображення у d3.
Дозвольте сказати іншим способом: якщо ви можете зробити d3.select на своєму оригінальному svg, який поверне лише один шлях у штаті / країні / регіоні, тоді ви можете використовувати d3 для створення хороплету. Зазвичай це відбувається, коли у вас є карта у SVG. Це насправді простіше, ніж використовувати файл GeoJSON, оскільки вам не потрібно турбуватися про місце місця, проекцію тощо. Ви можете навіть налаштувати оригінальний SVG, щоб додати відсутню інформацію (наприклад, імена штатів, які ви можете додати як ідентифікатори DOM або Класи) перед тим, як використовувати його з D3, але зазвичай це не потрібно.
З іншого боку, як було сказано раніше, у SVG є лише інформація про шлях / лінії, а не географічна / просторова інформація, тому, якщо ви хочете перетворити зі SVG в GeoJSON, вам потрібно додати інформацію про геолокацію ADD / MAP до вашого SVG-зображення. Наприклад, ви можете спершу перетворити зі svg в JSON, потім обчислити / додати інформацію про геолокацію (це буде залежати від регіону, який ви картографуєте) та генерувати з цього GeoJSON. Наскільки я знаю, немає жодного інструменту, який би не міг зробити цю роботу для вас.