Sistemas de Informações
Geográficas
Unidade 5: Análise de Dados
Prof. Cláudio Baptista
2010.1
Medidas em SIG
 O cálculo de comprimentos, perímetros e
áreas é uma aplicação comum em SIG
 Em raster, estas medidas são aproximações,
ao invés de valores exatos
 Ex.: Em Raster, existem mais de uma
resposta à pergunta: qual a distância entre A
e B? Onde A e B são dois pontos numa
linha


Uma solução é usar a distância Euclidiana
AB2 = AC2 + CB2
Outra solução é usar distância de Manhattan
Medidas em SIG
B
A
C
Distância Euclidiana
B
A
Distância Manhattan
Medidas em SIG
 Para obter perímetro e área em raster
devemos multiplicar o número de células
que compõem os limites pela resolução de
cada célula do grid.
Medidas em SIG
 Em Vector, as medidas são calculadas
usando o teorema de Pitáguras para obter-se
a distância Euclidiana.
 Geometria é usada para calcular perímetros
e áreas
 Estas medidas podem ser armazenadas
como atributos de modo que só precisam ser
calculadas uma única vez.
Consultas espaciais
 Exemplos de esquemas
 1) Unidades admnistrativas
Consultas espaciais
 Exemplos de esquemas
 2) Rodovias entre cidades
Consultas espaciais
 Exemplos de esquemas
 3) Uso da Terra (Land Use)

cada pedaço de terra no mapa represnta um
tema:
• agricultura
• habitação
• floresta
Consultas espaciais
 Consultas de referência
 Tipos



Alfanumérico
Espacial
Interativa
Consultas espaciais
 Consultas de referância





Alfa_ADM1: Número de habitantes da cidade
de Campina Grande
Alfa_AMD2. Lista das cidades do estado da
Paraíba
Alfa_ADM3. Número de habitantes no Brasil
Alfa_Rodovia1: Número de linhas na primeira
seção da BR 230
Alfa_Rodovia2: Nome de todas as seções que
constituem BR-116.
Consultas espaciais
 Consultas de referância





Espac-ADM4. Cidades adjacentes à cidade
Cajazeiras num mesmo estado
Espac_ADM5. Mostre o estado da Paraíba
Espac_ADM6. Cidades maiores do que a maior
cidade da Paraíba
Espac_Rodov3. Tamanho da rodovia BR-230
Espac_ADM_Rodo1. Mostre as rodovias que
passam pelo estado da Paraíba
Consultas espaciais
 Consultas de referência




Espac_ADM_UT1. Mostre todas as áreas
residenciais na cidade de Recife
Espac_ADM_UT2. Faça um overlay dos temas
de unidades administrativas e uso da terra
INTER_ADM7. Descrição da cidade apontada
na tela
INTER_ADM8. Cidades que interteptam um
dado retângulo na tela
Consultas espaciais
 Consultas de referência



INTER_ADM9. Partes de cidades dentro de um
dado retângulo na tela
INTER_Rodo5. Descrição de uma seção
apontada na tela
INTER_Rodo6. Descrição da rodovia cuja
seção está sendo apontada na tela
Relacionamentos Espaciais
Disjoint
Contain
Equal
Meet
Cover
Overlap
Relacionamentos Espaciais
 Vários tipos





Topológico: disjoint, overlap, contains
(reflexivo inside), meet, equal, cover( reflexivo
covered_by)
Direcional: left, right, above, below, north,
south, east, west, northeast, northwest, southest,
southwest
Métrico: area, perimeter, length, distance, far,
near, buffer
Rede: connected, next, previous, shortest_path
Conjunto: intersection, union, difference,
equals
Estendendo Modelo de Dados
com TDA Espaciais
 Conceitos básicos:



Com TDA (Tipo Abstrato de Dados) Espaciais,
uma objeto espacial, é considerado como uma
lista de operações que podemos executar neste
independente de sua representação interna.
Exemplo: Interseção de dois objetos
Modelo Espacial (estrutura de dados) versus
Modelo Geográfico (representação de entidades
do mundo real
Estendendo Modelo de Dados
com TDA Espaciais
 Escolha de tipos apropriados
Pontos
Polygon
lineString
lineString complex
Polygon set
Misturado
Estendendo Modelo de Dados
com TDA Espaciais
 Definindo Operações sobre TDA Espaciais

O resultado de uma operação espacial pode ser
um tipo atômico (integer, real, boolean) ou um
dos três tipos espaciais: ponto, linha, polígono
Estendendo Modelo de Dados
com TDA Espaciais
 Ex. Interseção entre objetos espaciais
A
B
AB = 2 Polígonos;ou 2 polígonos e 1 linha;
ou 2 polígonos, 1 ponto e 1 linha
Estendendo Modelo de Dados
com TDA Espaciais
 API do TDA Região:




PointInRegion (região, ponto): boolean (testa se
um ponto pertence a uma região)
Overlaps(região, região):boolean ( testa se duas
regiões interceptam
Clipping(região, retângulo): região (computa a
interseção de uma região e um retângulo
retornando uma região (possivelmente vazia))
Intersection(região, regiào): região (retorna a
interseção de duas regiões, retorna uma região
(possivelmente vazia)
Estendendo Modelo de Dados
com TDA Espaciais
 API do TDA Região:



Meets (região, região): boolean (testa a
adjacência de duas regiões)
Area( região) : real (retorna a área da região)
União (set{região}) : região (recebe um
conjunto de regiões e retorna uma região que
representa a união das regiões de entrada.
Estendendo Modelo de Dados
com TDA Espaciais
 API do TDA Linha:



pointInLine(linha, ponto): boolean (testa a
interseção entre a linha e um ponto
length(linha):real (computa o comprimento de
uma linha)
overlapsLinhaRegião(linha, região): boolean
(testa a interseção entre uma linha e uma
região)
Estendendo Modelo de Dados
com TDA Espaciais
 API do TDA Ponto:


distance(region, ponto): real (computa a
distância entre um ponto e as bordas de uma
região)
distance(ponto, ponto): real (computa a
distância entre dois pontos)
Projetando TDA Espaciais
 Operações Unárias com resultado Boolean.
• Testam um objeto espacial com relação a uma
propriedade dada. Exemplo teste de conectividade
 Operações Unárias com resultado escalar
• computar uma área, um comprimento, perímetro de
um objeto espacial
 Operações Unárias com resultado Espacial
• transformações topológicas (preservam os
relacionamentos topológicos) : rotação, translação,
mudança de escala, simetria.
• Outras operações: buffer, boundary, MBR, centroid
Projetando TDA Espaciais
 Operações Unárias com resultado Boolean.
• Testam um objeto espacial com relação a uma
propriedade dada. Exemplo teste de conectividade
 Operações Unárias com resultado escalar
• computar uma área, um comprimento, perímetro de
um objeto espacial
 Operações Unárias com resultado Espacial
• transformações topológicas (preservam os
relacionamentos topológicos) : rotação, translação,
mudança de escala, simetria.
• Outras operações: buffer, boundary, MBR, centroid
Projetando TDA Espaciais
 Operações Binárias com resultado espacial
• operações de conjunto: interseção, união, diferença
• Ex. Parte das rodovias dentro do estado da Pb
 Operações Binárias com resultado Boolean
• usados seleção e junção espacial
• Predicados topológicos: intersects, contains,
adjacent, enclosed_by, windowing
• Predicados de direção: acima, Norte
• Predicados métricos: distância
Projetando TDA Espaciais
 Operações Binárias com resultado escalar

distância entre uma rodovia e uma cidade
 Algumas observações importantes:
• A interseção de dois polígono é um conjunto de
poligonos
• A interseção de uma linha e uma região retorna
vários pontos (não necessariamente uma linha)
• A união de dois linestrings (polylines) não é um
linestring
• A diferença de dois polígonos sem buracos pode ser
um polígono com buraco
Explorando relacionamentos
entre Objetos espaciais
 Uma definição formal dos relacionamentos
espacias se faz necessária para clarificar os
vários entendimentos destes
relacionamentos entre usuários
 Enfocaremos relacionamentos topológicos
entre dois objetos no plano.
 Seja b(A) = boundary (borda) do objeto A e
i (A) = interior do objeto A
Explorando relacionamentos
entre Objetos espaciais
b(A)  b(B) i(A)i(B) b(A)i(B)
{}
{}
{}
~{}
{}
{}
i(A)b(B) Relacionamento
{}
A disjoint B
{}
A meets B
~{}
{}
~{}
~{}
{}
~{}
{}
{}
A equals B
A inside B
~{}
{}
~{}
~{}
~{}
~{}
~{}
~{}
~{}
{}
{}
~{}
{}
~{}
~{}
~{}
B covers A
B inside A
A covers B
A overlaps B
Onde: {} representa conjunto vazio e
~{} representa conjunto não-vazio
Uso do modelo OR para
funcionalidade espacial


Usando SGBDOR (Objeto-Relacional) permite
usuários não só usar os tipos definidos pelo
SGBD como também definir e usar TADs.
Criando o BD para aplicação Administrativa
Create table Pais (
codigo integer,
nome varchar(30),
geometria polígono,
primary key (codigo));
create table Estado (
codigo integer,
nome varchar(30),
codPais int,
geometria polígono,
primary key(codigo),
foreign key(codPais)
references Pais(codigo))
Uso do modelo OR para
funcionalidade espacial
Create table Cidade (
codigo integer,
nome varchar(30),
populacao: int,
codEstado int,
geometria polígono,
primary key (codigo),
foreign key(codEstado) references Estado(codigo)
);
Obs. Poderiamos ter apenas a geometria em cidades e ai derivaríamos
para estado e país, porém é muito custoso computar a geometria de
um estado através da união de todos as cidades e assim por diante!
E o atributo população que está apenas na cidade?
Uso do modelo OR para
funcionalidade espacial
Aplicação de Rodovias
Create table Rodovia (
codigo int,
nome varchar(5),
tipo varchar(2),
primary key(2)
);
create table Secao(
codigo int,
nome varchar(4),
númeroLinhas int,
cidadeIni varchar(30),
cidadeFim varchar(30),
geometria line,
primary key(codigo),
foreign key(cidadeIni) references Cidade,
foreign key(cidadeFim) references Cidad
create table SeçãoRodovia (
codSecao int,
numeroSecao int,
codRodovia int,
primary key(codSecao, codRodovia),
foreign key (codSecao) references Secao(codigo),
foreign key(codRodovia) references Rodovia(codigo)
)
Uso do modelo OR para
funcionalidade espacial
Aplicação de Rodovias
create table Secao(
codigo int,
nome varchar(4),
númeroLinhas int,
cidadeIni varchar(30),
cidadeFim varchar(30),
geometria line,
primary key(codigo),
foreign key(cidadeIni) references Cidade,
foreign key(cidadeFim) references Cidade);
create table cidade (
nome varchar(30),
populacao int,
geometria poligono,
primary key(nome))
Uso do modelo OR para
funcionalidade espacial
Aplicação Uso da Terra
create table UsoTerra (
nomeRegiao varchar(30),
tipoUsoTerra varchar(30)m
geometria poligono,
primary key(nomeRegiao)
);
Uso do modelo OR para
funcionalidade espacial
Consultas :
ALFA_ADM1: Número de habitantes do estado da Paraíba
select populacao
from Estado
where nome = ‘Paraiba’
ALFA_ADM2: Liste os nomes das cidades no estado da Paraiba
select nome
from Estado e, Cidade c
where e.codigo = c.codigo and e.nome = ‘Paraiba’
Uso do modelo OR para
funcionalidade espacial
Consultas :
ALFA_ADM3. Número de habitantes do Brasil
select sum(c.populacao)
from Pais p, Estado e, Cidade c
where p.nome = ‘Brasil’ and e.codigo = c.codEstado
and p.codigo = e.codPais
ALFA_R1: Número de linhas na primeira seção da BR-230
select s.numeroLinhas
from RodoviaSecao rs, Rodovia r, Secao s
where r.codigo = rs.codRodovia and rs.codSecao = s.codigo
and r.nome = ‘BR230’ and rs.numeroSecao = 1
Uso do modelo OR para
funcionalidade espacial
Consultas :
Alfa_R2. Nomes de seções que constituem a BR230
select s.nome
from RodoviaSecao rs, Rodovia r, Secao s
where r.nome = ‘BR230’ and r.codigo = rs.codRodovia and
rs.codSecao = s.codigo
ESPAC_ADM4. Cidades adjacentes à cidade de Cajazeiras no
mesmo estado
select c1.nome
from Cidade c1, Cidade c2
where c2.nome = ‘Cajazeiras’
and c1.codEstado = c2.codEstado
and Meets (c1.geometria, c2.geometria)
Uso do modelo OR para
funcionalidade espacial
Consultas :
ESPAC_ADM5. Mostre o estado da Paraíba
select geometria
from Estado
where nome = ‘Paraiba’
SE a geometria tivesse sido armazenada apenas nas cidades a query
anterior ficaria
select RegionUnion(c.geometria)
from Cidade c, Estado
where e.codigo = c.codEstado and e.nome = ‘Paraiba’
Uso do modelo OR para
funcionalidade espacial
Consultas :
ESPAC_ADM6: Cidades maiores do que a maior cidade da Paraíba
select nome
from Cidade
where Area(geometria) >
(select max (Area(c.geometria))
from Cidade c, Estado e
where e.codigo = c.codEstado and e.nome = ‘Paraiba’)
Uso do modelo OR para
funcionalidade espacial
Consultas :
ESPAC_R3. Comprimento da rodovia BR230
select sum(Length(s.geometria))
from Rodovia r, RodoviaSecao rs, Secao s
where r.nome = ‘BR230’ and r.codigo = rs.codRodovia and
rs.codSecao = s.codigo
ESPAC_ADMR1. Todas as rodovias que passam pela Paraíba
select distinct r.nome
from Estado e, Rodovia r, RodoviaSecao rs, Secao s
where e.nome = ‘Paraiba’ and r.codigo = rs.codRodovia and
rs.codSecao = s.codigo and
Overlaps (s.geometria, e.geometria)
Uso do modelo OR para
funcionalidade espacial
Consultas :
ESPAC_ADM_UT1. Mostre todas as áreas residenciais na cidade
de Recife
select Intersection(u.geometria, c.geometria)
from Cidade c, UsoTerra u
where c.nome = ‘Recife’
and u.tipoUsoTerra = ‘area residencial’
and Overlaps(u.geometria, c.geometria)
ESPAC_ADM_UT2: Overlay de temas de cidades e uso da terra
select c.nome, u.tipoUsoTerra, Intersection(c.geometria, u.geometria)
from Cidade c, UsoTerra u
where Overlaps(c.geometria, u.geometria)
Uso do modelo OR para
funcionalidade espacial
Consultas :
INTER_ADM7. Descrição da cidade apontada na tela
select nome, populacao
from Cidade
where PointInRegion(geometria, @point)
INTER_ADM8. Cidades que interceptam um dado retângulo na tela
select nome
from Cidade
where OverlapsRect(geometria, @rectangle)
Uso do modelo OR para
funcionalidade espacial
Consultas :
INTER_ADM9. Partes de cidade que estão dentro de um dado
retângulo na tela
select Clipping(geometria, @rectangle)
from Cidade
where Overlaps(geometria, @rectangle)
INTER_R5. Descrição da seção apontada na tela
select nome, numeroLinhas
from Secao
where PointInLine(geometria, @point)
Uso do modelo OR para
funcionalidade espacial
Consultas :
INTER_R6. Descrição das rodovias cuja seção está apontada na tela
select r.nome, r.tipo
from RodoviaSecao rs, Rodovia r, Secao s
where rs.codRodovia = r.codigo
and rs.codSecao = s.codigo
and PointInLine(s.geometria, @ point)
Análise: Básica
 Operações espaciais
Vector

determinação de
centróide

medidas espaciais

análise de buffer

agregação espacial

overlays e joins
espaciais
Raster

análise de vizinhança

modelagem Raster
 Operações não
espaciais

seleção de registros
• tabular via SQL
• ‘information clicking’
com cursor



agregação de registros
análise estatistica
joins de tabelas
Análise: Avançada & Especializada
Avançada
 análise de superfície
 análise de proximidade

nearest neighbor layer

distance matrix layer
 análise de rede

roteamento
• shortest path (2 points)
• travelling salesman (n points)
Especializada
 Processamento e classificação
de Imagem de Sensoriamento
Remoto
 modelagem raster
 modelagem de
superfícies 3-D
 estatísticas espaciais
 funcionalidade
especializada




modelo de transportes
modelo de uso da terra
modelo hidrológico
etc.
Operações Espaciais:
Centróide ou Mean Center
 Ponto de balanço para distribuição espacial


n
X
n
i
X
i 1
i
,Y 

i 1
n
n
representação de ponto para um polígono--análogo à média
pode ser ponderado pela ‘magnitude’ de cada ponto (análogo à média ponderada)
 usado para

Y
sumarizar mudança ao longo do tempo numa distribuição (ex. Centróide da
população do Brasil a cada 10 anos)
colocar labels em polígonos
centroide fora do
polígono
Note: muitas aplicações ArcView calculam
apenas um “psuedo” centroid: as coordenadas
do MBR do polígono!
Operações Espaciais:
Medidas Espaciais
Comentários:
 possíveis métricas de distância:
Medidas Espaciais:
 medidas de distância







entre pontos
de ponto ou raster para um
polígono
entre centroides de polígonos
área de um polígono
perímetro de um polígono
forma (shape) de um polígono
cálculo de volume

ex. para reservatórios
 determinação de direção

ex. nuvens de fumaça



linha reta/linha aérea
métrica de blocos de cidade
(manhattan metric)
distância através de rede
 forma (shape) é medido por:
= 1.0 para círculo
perimetro
= 1.13 para quadrado
area x 3.54
= número grande para polígono irregular
Operações Espaciais: buffer zones
 região dentro de distância ‘x’
units
 buffer em qualquer objeto:
ponto, linha ou polígono
 Implementado em Arcview
3.2 com Theme/Create buffers
em ArcGIS 8.1 com
Tools/Buffer Wizard
point
buffers
line
buffer
polygon buffer
Exemplos
 buffer de 200 metros ao redor
de uma propriedade
 buffer de 100 ft de um rio
limitando desenvolvimento
 buffer de zona de 3 km dos
limites de uma cidade
mostrando a sua área distrital
 usado para definir (ou
excluir) áreas como opção
para futura análise
Operações Espaciais:agregação espacial
 districting/redistricting
agrupar polígonos contíguos
em distritos

polígonos originais
preservados
 Regionalização (ou dissolving)

agrupar poligonos em regiões
contíguas

bordas dos polígonos originais
dissolvidas
Critérios de agrupamento podem ser:


 classificação


agrupar poligonos em regiões
não-contíguas
bordas originais usualmente
dissolvidas

formal (baseados em caracteristicas dos objetos)
ex. vizinhança de cidades
funcional (baseado em links):
ex. zonas de comutação
Pode ser:


contíguo
não-contíguo
Bordas originais de polígonos podem ser::


preservadas
removidas (dissolving)
Exemplos:





zonas de escola a zonas universitárias
(funcional districting)
blocos de cidade em distritos legislativos
(formal districting)
criação de distritos de polícia (funct. reg.)
criação de mapa de vizinhança de
cidade(form. reg.)
agrupando dados de censo em
segmentos de marketing --yuppies,
nerds, etc (class.)
Districting: elementary school attendance zones grouped to form
junior high zones.
Regionalization: census tracts grouped into neighborhoods
Classification: cities categorized as central city or suburbs
soils classified as igneous, sedimentary, metamorphic
Operações Espaciais
Spatial Joins e Overlays
Exemplos
 atribuir amostras ambientais

selecionar features numa camada, ou
(pontos) para o censo para

criar uma nova camada
estimar exposição per capita
 usado para integrar dados com diferentes
(ponto em poligono)
propriedades espaciais (ponto v.
poligono)
 identificar terrenos atravessados
 pode fazer overlay de polígonos em:
por uma rodovia para estudo de

pontos (ponto em poligono)
vizinhança

linhas (linha em poligono)
(poligono em linhas)

outros poligonos (poligono em poligono)  integrar dados de censo com

diferentes possíveis combinações de
dados de casas para vender
lógica Booleana
(poligono em poligono)
• Union (A or B)
 Join do tema cidades capital com
• Intersection (A and B)
• A and not B ; not (A and B)
tema todas cidades para calcular
 pode fazer overlay de pontos em:
a distância de cidade para a

Pontos, que encontra e calcula a distância
capital de estado mais próxima
ao ponto mais próximo em outro tema
(ponto em ponto)

combina duas (ou mais) camadas para:

Linha, que calcula a distância para a
linha mais próxima
Exemplo: Spatial Matching:
Clipping e Erasing
•CLIP - extrai as features do mapa que
sobrepõe com região selecianada para o clip.
•ERASE - apaga as features do
mapa que sobrepõe com os
poligonos da região selecianada
para o erase.
Exemplo: Spatial Matching via
Overlay de Polígono-em-Polígono
Uso da terra
a.
Bacias de Atlântico
Drenagem Golfo
c.
b.
A.
G.
Camada combinada aA bA
bG
aG
cA
cG
Os dois temas ( uso da
terra & bacias de
drenagem) não têm
bordas comuns. O SIG
cria uma camada
combinada permitindo o
cálculo de uso da terra
por bacia de drenagem.
Operações Espaciais:
modelagem baseada em raster
 Processos podem ser:




Local: um célula apenas
Vizinhança: células relativas
as outras
Zonal: células numa dada
seção
Global: todas células
Operações não Espaciais:
Tabular

crie consulta usando SQL (com junções ou
não)
Gráfico (selecione pela localização)

com cursor no mapa (use Select Features tool)



num ponto
dentro de um retângulo
dentro de um raio (circulo) ao redor de um ponto
Saída pode ser:
 registros highlighted numa
tabela, e features highlighted
num mapa simultaneamente
 Novas tabelas e mapa layers
Exemplos
 Use SQL query para
selecionar todos os CEPs
cuja média de arrecadação é
superior a R$2.000,00
 identificar CEPs dentro de
um raio de 5 KM radius of
vários potenciais sites de
comércio
 mostrarcasas à venda no
mapa, e clique para obter
uma foto da casa selecionada
e dados adicionais
Aplicações Avançadas:
Análise de Rede
Roteamento
 menor caminho entre dois
pontos


instruções de direção
(localizar um hotel a partir do
aeroporto)
 travelling salesman: menor
caminho conectando n pontos

Districting baseado em rede
rota de ônibus, serviços de
entrega
Em todos os casos, ‘distância’ pode ser
medida em km, tempo, custo ou outros
(ex. diâmetro de um cano de água,
esgoto etc.).
Atributos de arcos ou nodos (ex. rua
mão única, não pode dobrar à esquerda)
pode também ser crítico.
expande o site ao longo da rede até um
critério (tempo, distância, custo, object
count) ser alcançado; então atribuir
área ao distrito


criar áreas de marketing, etc
essencialmente network-based
buffering
Alocação baseada em rede

atribui localizações ao centro mais
próximo baseado na viagem ao longo
da rede

atribuir clientes a entregadores de
pizza.
Download

Análise de Dados Espaciais ppt