Eu estava procurando um arquivo de forma de estrada para a Austrália hoje. Acabei indo para Geofabrik . O Open Street Map possui dados em .osm
formato. Mas eles não têm um .shp
para a Austrália.
Se possível, desejo converter os osm
arquivos para o shapefiles
R.. Pesquisei, mas ainda não encontrei soluções. Existe alguma maneira de fazer isso? Como alternativa, é possível ler arquivos osm em R e converter os dados em quadro de dados para que eu possa desenhar figuras usando ggplot2
?
Consegui o seguinte gráfico da NZ usando dois shapefiles com maptools
e ggplot2
. Idealmente, quero produzir um mapa semelhante da Austrália.
shapefile
openstreetmap
r
ggplot2
jazzurro
fonte
fonte
Respostas:
Esta não é uma solução R, mas o Quantum GIS (QGIS) é uma ótima maneira de conseguir o que deseja.
Você pode simplesmente carregar o arquivo .osm (ferramenta Adicionar vetor), clicar com o botão direito do mouse no Sumário e Salvar como arquivo de forma ESRI.
O QGIS pode falhar com uma extração tão grande; portanto, para evitar isso, você pode usar as Ferramentas OSM, como a API OverPass, para baixar apenas o que você precisa usando caixas delimitadoras.
A OverPass-Turbo Api também está disponível para obter extratos, um breve tutorial sobre o assunto aqui!
Executei um exemplo rápido com base nas tags highway = primary e highway = primary_link (O esquema de marcação de estrada OSM pode ser visto aqui! ) Usando o Assistente no Overpass-Turbo e a imagem abaixo foi o resultado para Victoria.
Em seguida, exportei os dados como GeoJSON, carreguei esses dados no QGIS e salvei o resultado como um arquivo de forma. (A segunda imagem mostra as linhas e polys carregadas no QGIS)
A outra alternativa é fazer o download do arquivo PBF ou OSM para a área do GeoFabrik e subconjunto dos dados extraindo as tags highway = * usando osmose . Se você deseja atualizar seus dados regularmente, osmose seria a maneira recomendada de prosseguir. Se for uma extração única, o Overpass provavelmente seria mais fácil, mesmo que você precise fazer isso em caixas delimitadoras menores devido a limitações de memória. Você aplicaria apenas as mesmas consultas de passagem superior a diferentes caixas delimitadoras.
fonte
@jazzurro, você pode perfeitamente fazer isso com R, basta procurar o pacote osmar! Leia a documentação do osmar (osmar.r-forge.r-project.org/RJpreprint.pdf). Nas páginas 11 pp., Você pode encontrar um exemplo detalhado para extrair estradas / rodovias pelas tags correspondentes para munich.osm! Depois de extrair e extrair os dados de um arquivo planetário para a Austrália, você pode converter para qualquer formato que desejar!
Editar:
Como alguns comentaristas estavam reclamando da falta de exemplos, postarei um exemplo dos documentos. IMHO não seria necessário redigitar exemplos existentes aqui, seria?
fonte
.osm
arquivos em quadro de dados. Observando rapidamente, parece que não há uma maneira direta de converter.osm
arquivos em quadro de dados. Ou existe?munich.osm
! Depois de extrair e extrair os dados de um arquivo planetário para a Austrália, você pode converter para qualquer formato que desejar! ps: removeu o outro link do OP como este não fez tráfico de endereço com OSM-arquivos ..OK, aqui vem a resposta correta:
Verifique se
rgdal
(versão> = 1.0.4) está instaladoVerifique se
gdal
(versão> = 1.11.0) está instaladoCertifique-se de que
gdal
seja compilado com o suporte Expat / OSM e SQLite:Verifique se você sabe qual camada deseja salvar como shapefile:
Estamos prontos para ir:
Depois de ler o arquivo
readOGR
, siga estas diretrizes para aprender como plotá-loggplot2
.Observe que você também pode ler
.osm
arquivos no formato XML, apenas verifique se eles não estão compactados (por exemplo, a extensão.osm
não está.osm.bz2
). Tente usar o arquivo .osm.pbf, pois eles são muito menores.fonte
rgdal
para Windows para é 0,9-3 e retornaFALSE FALSE
parac('SQLite', 'OSM') %in% ogrDrivers()$name
rgdal
você poder experimentar o pacote fonte ( cran.r-project.org/src/contrib/rgdal_1.0-4.tar.gz ) ou o binário oldrel ( cran.r-project.org/bin/windows/contrib/3.1/ rgdal_1.0-4.zip ). Sobre oGDAL
binário do Windows, eu não sei, você pode registrar um relatório de bug paraGDAL
projetar e solicitar que o suporte a Expat e SQLite seja ativado nosGDAL
binários do Windows .osm2shp.ru aqui você pode baixar os dados do openstreetmap no formato shapefiles. Dados divididos por regiões: América do Norte e do Sul, Austrália e Oceania, África, Europa e Ásia. 62 camadas para download. Dados filtrados pelas condições "Recursos do mapa".
fonte