Programa R para Biologia da Conservação
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Função "labels" para alterar os nomes de valores nos eixos

2 participantes

Ir para baixo

Função "labels" para alterar os nomes de valores nos eixos Empty Função "labels" para alterar os nomes de valores nos eixos

Mensagem por Daniel Fernandes da Silva Ter maio 12, 2020 8:30 am

Oi Marcos, tudo bom?

Ontem no webnário te perguntei sobre essa questão. A ideia de usar a função "labels" veio quando assisti a última aula do módulo 4. Tentei fazer isso hoje, mas não funcionou. O máximo que consegui foram que os pontos se transformassem em caixas. Acho que esse é o ponto: desconfio que a função "labels" só funcione para dados categóricos. Na verdade o problema inicial foi esse: eu queria fazer um gráfico de dispersão (com pontos) só que o eixo x era composto por datas (06/05, 07/05.....) var. categórica e o eixo y por tempo (var. numérica). Quando usava a função "plot" para fazer o gráfico ele me dava caixas e não pontos distribuídos no espaço. Fui ver e isso acontecia justamente porque ele interpretou a var. "datas" como categórica. Para "resolver" isso eu transformei "datas" em uma variável quantitativa "dias" (1, 2, 3, 4,...). Ficou do jeito que eu queria, mas então eu queria trocar os números do eixo "x" pelas datas.  Certamente deve haver alguma maneira mais inteligente de fazer isso, mas seguem abaixo a tabela de dados e meu script. Se puder me dar uma luz agradeço:

data dia periodo tempo
05_05 1 ida 23
05_05 1 volta 18
06_05 2 ida 22
06_05 2 volta 17
08_05 3 ida 24
08_05 3 volta 21
09_05 4 ida 25
09_05 4 volta 18
11_05 5 ida 22
11_05 5 volta 18

Esse abaixo rodou certinho:

setwd("C:/R/Curso R")
dir()
dados<-read.table("grafico_caminhada.txt", h=T)
dados
summary(dados)
str(dados)
levels(dados$periodo)
cores<-c("red", "blue1")
plot(dados$tempo~dados$dia, xlab="Dias", ylab="Tempo (em minutos)", main="Caminhadas até a porteira da Fazenda do Macuco", xlim=c(1, 10), ylim=c(15, 35), las=1, pch=16, col=cores[dados$periodo])
legend("topleft", legend=levels(dados$periodo), col=cores, pch=16)
lines(dados$tempo[dados$periodo=="ida"], col="red")
lines(dados$tempo[dados$periodo=="volta"], col="blue1")

Depois coloquei a função labels e apareceram as barras:

setwd("C:/R/Curso R")
dir()
dados<-read.table("grafico_caminhada.txt", h=T)
dados
summary(dados)
str(dados)
levels(dados$periodo)
dados$dia<-factor(dados$dia, levels=c("1", "2", "3", "4", "5"))
dados$dia<-factor(dados$dia, labels=c("05/05", "06/05", "08/05", "09/05", "11/05"))
cores<-c("red", "blue1")
plot(dados$tempo~dados$dia, xlab="Dias", ylab="Tempo (em minutos)", main="Caminhadas até a porteira da Fazenda do Macuco", xlim=c(1, 10), ylim=c(15, 35), las=1, pch=16, col=cores[dados$periodo])
legend("topleft", legend=levels(dados$periodo), col=cores, pch=16)
lines(dados$tempo[dados$periodo=="ida"], col="red")
lines(dados$tempo[dados$periodo=="volta"], col="blue1")

Abraço,

Daniel

Daniel Fernandes da Silva

Mensagens : 1
Data de inscrição : 31/03/2020

Ir para o topo Ir para baixo

Função "labels" para alterar os nomes de valores nos eixos Empty Re: Função "labels" para alterar os nomes de valores nos eixos

Mensagem por Valeria Andrade Qua maio 13, 2020 5:39 pm

Ab

Valeria Andrade

Mensagens : 94
Data de inscrição : 12/03/2018

Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos