Não detectado InvalidValueError: não é um Feature ou FeatureCollection
Depois de ver um recentevídeo pelos desenvolvedores do Google, decidi fazer um mapa regional do Reino Unido. Havia algumas possibilidades mencionadas neste site que eu tive que descartar *
Então acabei usando este site (página de exemplo de downloads de dados):http://mapit.mysociety.org/area/11804.html
Observe oDownload GeoJSON como o terceiro link para baixo? É sobre um tamanho de arquivo de 1Mb. Quando tentei usá-lo com o meu mapa:
function initMap(){
var ukc = new google.maps.LatLng(54.8, -4.6);
var mapOptions = {
zoom: 5,
center: ukc
};
map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
map.data.loadGeoJson('http://local.mapsite.com:8080/app/jsondata/eastern.json');
}
$(document).ready(function(){
initMap();
});
Eu recebi o erro acima:Não detectado InvalidValueError: não é um Feature ou FeatureCollection
Corrigir tentativa 1 - Google itPesquisando no Google, o erro voltou com nada de útil.
Corrigir tentativa 2 - reduzi-loEu pensei que talvez fosse o tamanho da fera, então a encolhi usando o mapshaper.org para um 10K mais gerenciável.Ainda sem sorte!
Fix Tentativa 3 - Lint itTalvez meu GeoJSON tenha sido mal formatado? Mas como é possível considerar que estava ali trabalhando no mapit.org, mas encontrei este site maravilhoso para descobrir dados do GeoJSON:http://geojsonlint.com/ - O fiapo funcionou! Aparentemente, o GeoJSON funcionou tão bem que chamou meu polígono de East Anglia no Reino Unido em toda a sua glória (note que o geojsonlint usa o OpenStreetMap). Mas aindaSem sorte
Corrigir tentativa 4 - TopoJsonEsperando poder combinar as regiões e comprimir ao mesmo tempo, pensei desesperadamente que o topojson funcionaria. Eu tentei - ainda recebi o mesmo erro. Aqui está um link para meu arquivo topojson compartilhado no Google Drive:someregions.json Sem sorte.
Corrigir tentativa 5 - Adicionar código de recurso ao início do JSONO arquivo GeoJSON atual inicia {"bbox": [- 0.745702,51.448473,1.767999,52.98991], "type": "GeometryCollection", "geometries": ...
Eu adicionei:
{"type": "Feature", "bbox":[-0.745702,51.448473,1.767999,52.98991],"type":"GeometryCollection","geometries":
Fix Attempt 6Tente novamente regiões diferentes, pois elas não contêm o parâmetro bbox próximo ao início, mas simplesmente inicie {"type": "Polygon", "coordenates": [[[-3.155785, 53.427385], [-3.151533, 53.427328], [.. .
Aindasem sorte.
Conclusão (com falha)Mesmo que eu tenha provado que meu arquivo erapequeno o suficiente, fiapos etrabalhou em outro lugar Eu ainda recebi essas mensagens de erro irritantes do console ao tentar colocá-las no meu mapa.
Uncaught InvalidValueError: not a Feature or FeatureCollection
Aqui está meu arquivo GeoJSON reduzido compartilhado publicamente via GDrive:https://drive.google.com/file/d/0B42Aec8RKcHtNVNZZUxqV0Y5Rkk/edit?usp=sharing
Minhas próximas tentativas envolverão o topojson para compactar todas as regiões em uma com bordas internas, mas eu queria verificar aqui primeiro para ver se alguém sabe qual pode ser o meu problema. Porque isso pode levar mais algumas horas de energia inútil desperdiçada.
* A tentativa de usar os dados da Pesquisa de Ordenança falhou, pois eles forneceram dados de SHD e não SHP, conforme declarado em uma pergunta anterior sobre o assunto. Portanto, não consegui convertê-lo no GeoJSON usando ogr2ogr.