Django GIS Brasil

Release v0.2. (Instalação)

django-gis-brasil é uma iniciativa open-source da CodeFi.sh (Christian S. Perone, Leandro Nunes e Gabriel Wainer) para a criação de uma aplicação Django com informações geográficas do território brasileiro. O projeto contém atualmente informações de todos municípios brasileiros fornecidos pelo IBGE bem como polígonos geográficos prontos para serem importados no seu banco geográfico através do GeoDjango.

A aplicação django-gis-brasil realiza a importação de forma automática das informações geográficas para o seu banco geográfico. A aplicação também conta com a parte administrativa já modelada para todos os dados disponíveis (ver Screenshots) abaixo.

Screenshots

Listagem de Munícipios do Brasil

Todos modelos de dados incluem administração do Django implementada.

_images/municipios-lista.png

Pesquisa de Municípios

Todos modelos de dados incluem pesquisa nos campos.

_images/django-pesquisa.png

Dados Geográficos

Todos modelos de dados incluem polígonos geográficos.

_images/poa-municipio-edit.png

Informação Bairros

Informações geográficas (incluindo polígonos geográficos de bairros).

(Por hora, disponível apenas em Porto Alegre/RS):

_images/poa-bairro-edit.png

Pesquisas Geográficas

Utilizando o GeoDjango você pode fazer pesquisas geográficas, serializar dados automaticamente para o formato GeoJSON e outras facilidades mostradas nos exemplos abaixo.

Procurando por cidade

Neste exemplo, a cidade de “Porto Alegre” é encontrada e serializamos o polígono geográfico referente ao município em GeoJSON:

>>> from gisbrasil.models import *
>>> cidade = Municipio.objects.get(nome_municipio__iexact='Porto Alegre')
>>> cidade.multipoly.json
u'{ "type": "MultiPolygon", "coordinates":
    [ [ [ [ -51.233122078168442, -29.937217337009614 ],
    [ -51.220177248016007, -29.96659503107206 ],
(... omitido por brevidade ...)

Procurando por Latitude/Longitude

Neste exemplo, temos a coordenada Latitude -51.22 e a Longitude -30.03 e queremos encontrar detalhes da cidade que contém esta coordenada (tudo isto usando apenas uma pesquisa geográfica no banco de dados, sem acesso ao Google Maps ou qualquer outro serviço):

>>> from gisbrasil.models import *
>>> from django.contrib.gis.geos import Point
>>> coordenada = Point(-51.22, -30.03)
>>> qs = Municipio.objects.filter(multipoly__contains=coordenada)
>>> qs
[<Municipio: Porto Alegre>]

Como podemos notar, a cidade de “Porto Alegre” contém a coordenada especificada.

Para mais informações sobre como usar as pesquisas geográficas, veja a documentação do GeoDjango.

Criação de mapas com TileMill

Você pode utilizar o TileMill para conectar no seu banco geográfico e gerar mapas com estilos customizados utilizando os dados do Django GIS Brasil. Veja exemplos abaixo.

Todos Municípios do Brasil

_images/tilemill-municipios.png

Bairros de Porto Alegre

_images/tilemill-bairros-poa.png

Utilizando informações em rótulos

_images/tilemill-poa-bairros-nomes.png

Mapas coropléticos

Você também pode utilizar o GeoJSON gerado utilizando os dados do Django GIS Brasil para criar mapas coropléticos interativos utilizando o Leaflet como nos exemplos abaixo.

Mapa coroplético do Rio Grande do Sul

_images/cloro-rs.png

Mapa coroplético do Rio de Janeiro

_images/cloro-rj.png

Instalação

Siga as instruções abaixo para instalar esta aplicação no seu projeto Django.

  1. Instale o django-gis-brasil através do pip ou easy_install:

    pip install django-gis-brasil
  2. Adicione a aplicação “gisbrasil” na propriedade INSTALLED_APPS do seu projeto Django:

    INSTALLED_APPS = (
        ...
        'gisbrasil',
    )
  3. Execute:

    python manage.py syncdb

para criar os modelos no seu banco de dados.

  1. Execute:

    python manage.py gisloader

para carregar os dados para o seu banco de dados.

Changelog

Release v.0.2 (bug fix)

  • Corrigidos alguns typos na documentação;
  • Corrigido empacotamento da aplicação;

Release v.0.1

  • Lançamento do projeto open-source;

Licença

Mais informações:

Copyright (c) 2013, CodeFi.sh
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright
   notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
   notice, this list of conditions and the following disclaimer in the
   documentation and/or other materials provided with the distribution.
3. All advertising materials mentioning features or use of this software
   must display the following acknowledgement:
   This product includes software developed by CodeFi.sh.
4. Neither the name of the CodeFi.sh nor the
   names of its contributors may be used to endorse or promote products
   derived from this software without specific prior written permission.

* This software contains data public available from other sources, see
  the README files on each data directory for more information.

THIS SOFTWARE IS PROVIDED BY CODEFI.SH ''AS IS'' AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL CODEFI.SH BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Colaboradores

Christian S. Perone (CodeFi.sh) [twitter] [blog] [github].

Gabriel Wainer (CodeFi.sh) [twitter] [github].

Leandro Nunes (CodeFi.sh) [twitter] [blog] [github].

Página de pesquisa

django-gis-brasil é uma aplicação Django (GeoDjango) que contém dados abertos sobre informações geográficas do território brasileiro. É uma iniciativa open-source da CodeFi.sh para a comunidade Django brasileira.

This material is Open Data

Feedback

Sua opinião e sugestão são importantes. Se você quiser entrar em contato conosco, envie um email para nós.

Links Úteis

Fork me on GitHub