Diferenças
Aqui você vê as diferenças entre duas revisões dessa página.
Ambos lados da revisão anteriorRevisão anteriorPróxima revisão | Revisão anterior | ||
software:art:curso:chuvapr [2007/12/12 00:34] – paulojus | software:art:curso:chuvapr [2007/12/12 00:56] (atual) – paulojus | ||
---|---|---|---|
Linha 1: | Linha 1: | ||
====== Exemplo: chuva no Paraná e Krigagem ====== | ====== Exemplo: chuva no Paraná e Krigagem ====== | ||
- | 1. exemplo: Banco de Dados de Chuva no PR | + | Exemplo: Banco de Dados de Chuva no PR\\ |
- | Banco existente no SGBD | + | Banco existente no SGBD\\ |
(banco geográfico no formato TerraLib) | (banco geográfico no formato TerraLib) | ||
- | ## | ||
- | 2. Conectando e inspecionando o banco | ||
- | ## | ||
- | para ilustrar o uso vamos fazer as operações no R via aRT | + | // |
- | e acompanhar | + | // |
+ | ** 1. Conectando banco, | ||
+ | **//Fazer no TV://** | ||
+ | - abrir o terraView e conectar ao banco " | ||
+ | - se existir alguma vista já criada, visualize! | ||
- | ## | + | < |
- | 1. Conectando banco, visualizando no R e criando vistasno TV | + | |
- | ## | + | |
- | + | ||
- | **** fazer no TV: | + | |
- | a. abrir o terraView e conectar ao banco " | + | |
- | ## | + | |
- | b. se existir alguma vista já criada, visualize! | + | |
require(aRT) | require(aRT) | ||
+ | </ | ||
- | estabelecendo | + | Estabelecendo |
+ | <code R> | ||
con <- openConn() | con <- openConn() | ||
con | con | ||
+ | </ | ||
- | listando | + | Listando |
+ | <code R> | ||
showDbs(con) | showDbs(con) | ||
+ | </ | ||
- | conectando | + | Conectando |
+ | <code R> | ||
pr <- openDb(con, " | pr <- openDb(con, " | ||
+ | </ | ||
- | visualizando | + | Visualizando |
+ | <code R> | ||
pr | pr | ||
+ | </ | ||
- | abrindo | + | Abrindo |
+ | <code R> | ||
pr.l_contorno <- openLayer(pr, | pr.l_contorno <- openLayer(pr, | ||
pr.l_contorno | pr.l_contorno | ||
visualizando dado do layer | visualizando dado do layer | ||
plot(pr.l_contorno) | plot(pr.l_contorno) | ||
+ | </ | ||
- | abrindo | + | Abrindo |
+ | <code R> | ||
pr.l_dados <- openLayer(pr, | pr.l_dados <- openLayer(pr, | ||
pr.l_dados | pr.l_dados | ||
+ | </ | ||
- | visualizando, sobrepondo ao gráfico anterior | + | Visualizando, sobrepondo ao gráfico anterior |
+ | <code R> | ||
plot(pr.l_dados, | plot(pr.l_dados, | ||
+ | </ | ||
- | apagando | + | Apagando |
+ | <code R> | ||
deleteView(pr, | deleteView(pr, | ||
+ | </ | ||
- | **** fazer no TV: | + | **// |
- | reconectar o banco o TV e ver que a vista " | + | |
- | + | Criando | |
- | criando | + | <code R> |
tema_pol <- createTheme(pr.l_contorno, | tema_pol <- createTheme(pr.l_contorno, | ||
setVisual(tema_pol, | setVisual(tema_pol, | ||
+ | </ | ||
... e adicionando os pontos à vista já criada | ... e adicionando os pontos à vista já criada | ||
+ | <code R> | ||
tema_dados <- createTheme(pr.l_dados, | tema_dados <- createTheme(pr.l_dados, | ||
setVisual(tema_dados, | setVisual(tema_dados, | ||
+ | </ | ||
- | **** fazer no TV: | + | **// Fazer no TV://** |
- | reconectar o banco o TV e ver que " | + | |
- | ## | + | // |
- | 2. Operações da TL via aRT | + | // |
- | ## | + | ** 2. Operações da TL via aRT ** |
- | ilustrando | + | |
+ | Ilustrando | ||
+ | <code R> | ||
getProj(pr.l_contorno) | getProj(pr.l_contorno) | ||
getMetric(pr.l_contorno, | getMetric(pr.l_contorno, | ||
Linha 78: | Linha 93: | ||
getDistance(pr.l_contorno, | getDistance(pr.l_contorno, | ||
getDistance(pr.l_contorno, | getDistance(pr.l_contorno, | ||
+ | </ | ||
+ | // | ||
+ | // | ||
+ | ** 3. Trazendo e manipulando dados e fazendo análises no R ** | ||
- | + | Abrindo | |
- | ## | + | Duas possibilidades: |
- | 3. Trazendo e manipulando dados e fazendo análises no R | + | |
- | ## | + | <code R> |
- | + | ||
- | abrindo | + | |
- | + | ||
- | duas possibilidades: | + | |
- | a. via " | + | |
pr | pr | ||
th_dados <- openTheme(pr, | th_dados <- openTheme(pr, | ||
Linha 94: | Linha 108: | ||
dados <- getData(th_dados) | dados <- getData(th_dados) | ||
head(dados) | head(dados) | ||
- | + | </ | |
- | b. via tabela do banco | + | |
+ | <code R> | ||
pr.l_dados | pr.l_dados | ||
tb_dados <- openTable(pr.l_dados, | tb_dados <- openTable(pr.l_dados, | ||
Linha 103: | Linha 118: | ||
pts <- getPoints(pr.l_dados) | pts <- getPoints(pr.l_dados) | ||
dat[1:5,] | dat[1:5,] | ||
+ | </ | ||
- | trazendo | + | Trazendo |
+ | <code R> | ||
pol <- getPolygons(pr.l_contorno) | pol <- getPolygons(pr.l_contorno) | ||
pol | pol | ||
plot(pol) | plot(pol) | ||
+ | </ | ||
Fazendo agora uma interpolação dos dados de chuva via geoestatística/ | Fazendo agora uma interpolação dos dados de chuva via geoestatística/ | ||
- | carregando | + | * Carregando |
+ | <code R> | ||
require(geoR) | require(geoR) | ||
- | + | </ | |
- | convertendo | + | * Convertendo |
+ | <code R> | ||
geo <- as.geodata(dados, | geo <- as.geodata(dados, | ||
geo$borders <- pol@polygons[[1]]@Polygons[[1]]@coords | geo$borders <- pol@polygons[[1]]@Polygons[[1]]@coords | ||
plot(geo) | plot(geo) | ||
- | + | </ | |
- | estimando | + | * Estimando |
+ | <code R> | ||
ml <- likfit(geo, trend=" | ml <- likfit(geo, trend=" | ||
definindo e visualizando grid de predição | definindo e visualizando grid de predição | ||
Linha 125: | Linha 146: | ||
points(geo, bor=borders) | points(geo, bor=borders) | ||
points(loc0, | points(loc0, | ||
- | e fazendo krigagem | + | </ |
+ | * e fazendo krigagem | ||
+ | <code R> | ||
kc <- krige.conv(geo, | kc <- krige.conv(geo, | ||
- | + | </ | |
- | visualizando no R | + | |
+ | <code R> | ||
image(kc, col=terrain.colors(15), | image(kc, col=terrain.colors(15), | ||
+ | </ | ||
Preparing the predictions for aRT to transfer as a raster to the DBMS | Preparing the predictions for aRT to transfer as a raster to the DBMS | ||
+ | <code R> | ||
georpred <- .prepare.graph.kriging(locations=loc0, | georpred <- .prepare.graph.kriging(locations=loc0, | ||
names(georpred)[3] <- " | names(georpred)[3] <- " | ||
+ | </ | ||
- | criando | + | Criando |
+ | <code R> | ||
pr.l_pred <- createLayer(pr, | pr.l_pred <- createLayer(pr, | ||
addRaster(pr.l_pred, | addRaster(pr.l_pred, | ||
+ | </ | ||
- | checking | + | Checking |
+ | <code R> | ||
pr | pr | ||
+ | </ | ||
- | **** fazer no TV: | + | **// Fazer no TV://** |
- | reconectar o banco o TV e ver que um novo layer foi criado | + | |
Optional : setting to a TV view | Optional : setting to a TV view | ||
+ | <code R> | ||
th <- createTheme(pr.l_pred, | th <- createTheme(pr.l_pred, | ||
setVisual(th, | setVisual(th, | ||
pr | pr | ||
+ | </ | ||
- | **** fazer no TV: | + | **// Fazer no TV://** |
- | reconectar o banco o TV e ver que um novo tema foi adicionado a vista | + | |
- | visualize!!!! | + | |
- | ## | ||
- | Adicionando uma nova coluna (com predições) à tabela de dados | ||
- | ## | ||
- | para exemplicifar | + | // |
+ | // | ||
+ | ** 4. Adicionando uma nova coluna (com predições) à tabela de dados **\\ | ||
+ | Para exemplificar | ||
+ | <code R> | ||
kc0 <- krige.conv(geo, | kc0 <- krige.conv(geo, | ||
prs <- data.frame(id=rownames(geo$coords), | prs <- data.frame(id=rownames(geo$coords), | ||
createColumn(tb_dados, | createColumn(tb_dados, | ||
updateColumns(tb_dados, | updateColumns(tb_dados, | ||
+ | </ | ||
veja o novo status da tabela | veja o novo status da tabela | ||
+ | <code R> | ||
tb_dados | tb_dados | ||
+ | </ | ||
- | *** fazer no TV: | + | **// |
- | reconectar o banco e ver que há agora uma nova tabela no layer de dados | + | |
- | ## | + | // |
- | 4. Some plots | + | // |
- | ## | + | ** 5. Some plots ** |
Plotting directly from the data-base (not using R objects) | Plotting directly from the data-base (not using R objects) | ||
+ | <code R> | ||
plot(pr.l_pred, | plot(pr.l_pred, | ||
plot(pr.l_dados, | plot(pr.l_dados, | ||
plot(pr.l_contorno, | plot(pr.l_contorno, | ||
+ | </ | ||
+ | |||
- | ## | ||
Deletando um layer | Deletando um layer | ||
- | + | <code R> | |
- | # deleteLayer(con, | + | deleteLayer(con, |
+ | </ | ||