Kernel de pontos 2D
<?xml version="1.0" encoding="ISO-8859-1"?>
<Rscript>
<titulo>Kernel de pontos 2D</titulo>
<descricao>
Demo de utilização do Kernel em duas dimensões da biblioteca "splancs".
O esquema espera as coordenadas dos pontos nas colunas de nome de X e Y no quadro do TabWin.
Será necessário fornecer também o nome do arquivo que contém a poligonal que delimita a área de aplicação do Kernel. Este arquivo texto, com extensão .BNA, deve conter uma linha para cada par de coordenadas do polígono sendo que X separado de Y por uma virgula. A primeira linha do arquivo, normalmente contendo cabeçalho, é desprezada.
Este esquema precisa da biblioteca "splancs" instalada no seu computador. Entre no R interativo e clique no menu "Packages" para buscar e instalar esta biblioteca.
</descricao>
<autor>Ernani Bandarra</autor>
<email></email>
<versao>1.0</versao>
<parametro>Entre com a distância do Kernel ex: 1.0</parametro>
<parametro2></parametro2>
<colsel></colsel>
<colsel2></colsel2>
<script>
library(splancs)
names(tabela) = toupper(names(tabela))
pontos = as.points(list(x=tabela$X,y=tabela$Y))
arquivo = choose.files("*.bna","Escolha o arquivo que contém a poligonal envolvente..")
if (length(arquivo) == 0) {cat("Cancelada a escolha do arquivo!");q()}
poligonal = as.matrix(read.table(arquivo[1], sep = ",", skip=1))
# Cálculo do kernel: atenção para o parâmetro "h0"
warning("Calculando Kernel 2D ....")
kk = kernel2d(pontos, poligonal, h0=parametro, nx=100, ny=100)
grafico.tabwin()
# O mapa do kernel
plot(poligonal, asp=1, type="n", xlab=paste("kernel =",parametro), ylab="")
image(kk, add=T, col = terrain.colors(25))
polymap(poligonal, add=T)
title(titulo)
# Os pontos
plot(poligonal, asp=1, type="n", xlab="", ylab="")
pointmap(pontos, add=T)
polymap(poligonal, add=T)
title(titulo)
# Isolinhas
plot(poligonal, asp=1, type="n", xlab=paste("kernel =",parametro), ylab="")
contour(kk, col="red", add=T)
polymap(poligonal, add=T)
title(titulo)
# Contorno preenchido com escala
filled.contour(kk, color=terrain.colors, asp=1, xlab= paste("kernel =",parametro))
title(titulo)
# Os três primeiros no mesmo mapa
plot(poligonal, asp=1, type="n", xlab=paste("kernel =",parametro), ylab="")
image(kk, add=T, col = terrain.colors(25))
contour(kk, col="red", add=T)
pointmap(pontos, add=T)
polymap(poligonal, add=T)
title(titulo)
</script>
<exemplo>
</exemplo>
</Rscript>