[R-br] como fazer plot de componentes principais em cores?
Alisson Lucrécio
alisson.lucrecio em ifgoiano.edu.br
Terça Maio 24 20:19:38 BRT 2016
Jackson,
Você quer classificar por uma variável quantitativa? Se for isso, segue um
script abaixo.
mat5 <- matrix(rnorm(2000), ,4) # minha matriz
mat5
ages<-seq(1, 50000, by = 100) #idades
ages
library(plotrix)
agecol <- color.scale(ages, extremes=c("purple","red")) # encaixando a
escala de cor nas idades
library("vegan")
pca<-princomp(mat5) # calculando componentes principais
biplot(pca, cex=1, col = agecol) # plotando componentes princiapais.
plot(pca$scores[, 1L:2L], col = agecol)
pca_data <- data.frame(PC1 = pca$scores[, 1],
PC2 = pca$scores[, 2],
ages = ages)
library(ggplot2)
ggplot(pca_data) +
aes(x = PC1,
y = PC2,
colour = ages) +
geom_point() +
theme(legend.position="none")
Att.,
Alisson
2016-05-24 18:21 GMT-03:00 Cesar Rabak [via R-br] <
ml-node+s2285057n4666229h35 em n4.nabble.com>:
> Jackson,
>
> Eu tenho bastante experiência com ACP no R, tanto usando as funções do
> pacote base, como o do FactoMiner e ADE, mas não do vegan, e portanto minha
> observação pode ser incorreta:
>
> Você parece estar misturando duas soluções de produção de gráficos do R, o
> vegan usa o lattice e você quer que ele use um objeto que define cores do
> plotrix.
>
> Examinando seu CMR eu consegui fazer algo que *creio* seja o que você
> deseja desta forma:
>
> > plot(test.pca,display="sites", cex=1, type="none",scaling=-3)
> > points(test.pca,display="sites", cex=1, scaling=-3, col=agecol)
>
> Não consigo interpretar o resultado para ver se as cores fazem sentido 🤔.
> . .
>
> HTH
> --
> Cesar Rabak
>
>
>
> 2016-05-24 11:42 GMT-03:00 Jackson Rodrigues <[hidden email]
> <http:///user/SendEmail.jtp?type=node&node=4666229&i=0>>:
>
>> Oi pessoal,
>>
>> Eu preciso fazer um PCA que varie as cores em função dos anos. O mais
>> antigo em vermelho e a medida que chega as datas mais recentes vai ficando
>> roxo (uma escala de cor).
>>
>> eu tenho esse exemplo hipotético.
>>
>> mat5 <- matrix(rnorm(2000), ,4) # minha matriz
>> mat5
>> ages<-seq(1, 50000, by = 100) #idades
>> ages
>>
>> library(plotrix)
>> agecol<-color.scale(ages,extremes=c("purple","red")) # encaixando a
>> escala de cor nas idades
>>
>> rownames(mat5) <- c(seq ) # fazendo as idades os nomes da linhas da matriz
>>
>> library("vegan")
>> test.pca<-rda(mat5) # calculando componentes principais
>> plot(test.pca,display="sites", cex=1, type="p",scaling=-3) # plotando
>> componentes princiapais.
>>
>> O problema é: Como fazer os pontos do gráfico ficarem coloridos como
>> estabelecido em " agecol<-color.scale(ages,extremes=c("purple","red")) "
>>
>> Agradeço desde já a ajuda
>>
>> Abraços
>> Jackson
>>
>> _______________________________________________
>> R-br mailing list
>> [hidden email] <http:///user/SendEmail.jtp?type=node&node=4666229&i=1>
>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
>> código mínimo reproduzível.
>>
>
>
> _______________________________________________
> R-br mailing list
> [hidden email] <http:///user/SendEmail.jtp?type=node&node=4666229&i=2>
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forne�a
> c�digo m�nimo reproduz�vel.
>
> ------------------------------
> If you reply to this email, your message will be added to the discussion
> below:
>
> http://r-br.2285057.n4.nabble.com/R-br-como-fazer-plot-de-componentes-principais-em-cores-tp4666226p4666229.html
> To unsubscribe from R-br, click here
> <http://r-br.2285057.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=3357982&code=YWxpc3Nvbi5sdWNyZWNpb0BnbWFpbC5jb218MzM1Nzk4MnwxMDk0NDY4OTU4>
> .
> NAML
> <http://r-br.2285057.n4.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>
>
--
Alisson Lucrecio da Costa
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20160524/8714412a/attachment.html>
Mais detalhes sobre a lista de discussão R-br