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.

legenda do gráfico

4 participantes

Ir para baixo

legenda do gráfico Empty legenda do gráfico

Mensagem por kmariguele Dom Abr 26, 2020 12:22 pm

Boa tarde

Na unidade 3, foi apresentada uma forma de colocar a legenda no gráfico com o argumento "topleft", cuja legenda fica dentro do box. Mas, como faço para deixar essa legenda fora do box?

Obrigado

Keny

kmariguele

Mensagens : 7
Data de inscrição : 20/04/2020

Ir para o topo Ir para baixo

legenda do gráfico Empty Re: legenda do gráfico

Mensagem por Prof. Marcos Seg Abr 27, 2020 4:30 pm

Oi, Keny!

A função legend aceita coordenadas, de forma que você pode substituir o nome da posição por qualquer par que quiser (use argumentos x= e y= para isso). Isso vale sempre para qualquer parte de dentro do gráfico.

Para adicionar algo do lado de fora do gráfico, em suas margens, você vai precisar primeiro "avisar" o R que vai fazer isso. Normalmente isso é feito usando a função par() primeiro, para se estabelecer parâmetros, com o argumento xpd=T para se permitir o uso das margens e o argumento mar para se estabelecer os tamanhos delas (com margens pequenas você terá problemas).

Veja o exemplo:

Código:
#Dados:
data(iris)

#Permitindo escrita nas margens e definindo os tamanhos das margens:
par(xpd=T, mar=c(5,5,5,2))

#Gráfico:
plot(iris$Sepal.Length, iris$Sepal.Width, pch=16, col=c(1:3)[iris$Species])
legend(x=5.5, y=5.1, legend=levels(iris$Species), col=1:3, pch=16)
Prof. Marcos
Prof. Marcos

Mensagens : 678
Data de inscrição : 23/12/2015
Idade : 42
Localização : Maceió, AL

https://cantinhodor.wordpress.com/

Ir para o topo Ir para baixo

legenda do gráfico Empty Re: legenda do gráfico

Mensagem por Prof. Marcos Seg Abr 27, 2020 4:31 pm

Ah sim, note que a escolha dos valores de x e y vão na tentativa e erro mesmo, ok? É ir experimentando até achar a posição ideal. Wink
Prof. Marcos
Prof. Marcos

Mensagens : 678
Data de inscrição : 23/12/2015
Idade : 42
Localização : Maceió, AL

https://cantinhodor.wordpress.com/

Ir para o topo Ir para baixo

legenda do gráfico Empty Re: legenda do gráfico

Mensagem por Bia N. Qua maio 13, 2020 12:36 pm

Olá!!
Fiz a pergunta sobre a legenda dos gráficos no webnário e não tinha visto esse tópico. Obrigada pela referência!
No entanto, tive problemas para rodar esse script. Instalei uma outra versão do Rstudio (1.2.5042) e não sei se isso pode ter interferido.

Dois problemas que acontecem são:
1- a legenda não fica de acordo com a coordenada dos eixos. Apesar do eixo y terminar no 4.5, eu coloco 5.5 no comando e a legenda continua dentro do gráfico.
2- se eu aumentar o valor de y no argumento para a legenda ficar fora do gráfico, quando dou um zoom na janela do plot, a imagem fica desproporcional e a imagem da legenda fica cortada.

Não sei se consegui explicar direito...vou tentar colar a imagem do plot (com y=6.1) na sequência para facilitar.

Bia N.

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

Ir para o topo Ir para baixo

legenda do gráfico Empty Re: legenda do gráfico

Mensagem por Bia N. Qua maio 13, 2020 12:57 pm

legenda do gráfico <a href=legenda do gráfico YkN0ZI" />

Bia N.

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

Ir para o topo Ir para baixo

legenda do gráfico Empty Re: legenda do gráfico

Mensagem por Prof. Marcos Qua maio 13, 2020 3:43 pm

Oi, Bia.

De vez em quando o RStudio nos dá dor de cabeça por conta dos gráficos mesmo... Você já tentou aumentar o tamanho da janela onde os gráficos aparecem?

Veja a sequência para ver o efeito do tamanho da janela:

legenda do gráfico Imagem10

Depois:

legenda do gráfico Imagem11

E por fim:
legenda do gráfico Imagem12
Prof. Marcos
Prof. Marcos

Mensagens : 678
Data de inscrição : 23/12/2015
Idade : 42
Localização : Maceió, AL

https://cantinhodor.wordpress.com/

Ir para o topo Ir para baixo

legenda do gráfico Empty Re: legenda do gráfico

Mensagem por Prof. Marcos Qua maio 13, 2020 3:46 pm

Mas tem outra saída: você pode criar uma janela "externa" com o tamanho que quiser, usando dev.new()

Veja:

legenda do gráfico Imagem13
Prof. Marcos
Prof. Marcos

Mensagens : 678
Data de inscrição : 23/12/2015
Idade : 42
Localização : Maceió, AL

https://cantinhodor.wordpress.com/

Ir para o topo Ir para baixo

legenda do gráfico Empty Re: legenda do gráfico

Mensagem por Bia N. Sex maio 15, 2020 5:03 pm

Oi prof. Marcos!
Obrigada pela resposta, mas não consegui com nenhum dos dois....=/

Aumentar a janela do gráfico não fez diferença na localização da caixa. A imagem continuou exatamente igual, só que em proporções maiores.
E quanto à janela externa (dev.new), consegui abrir mas, ao que parece, com essa função a legenda só aparece dentro dos limites do gráfico. Ou seja, se você colocar uma coordenada que ultrapasse o limite de x, ou a legenda não aparece, ou aparece parte dela (até onde vai a caixa do gráfico).

Tive que instalar o Rstudio em outro pc, e uma versão mais nova do que a que eu tinha...fico com receio de ser algum problema de configuração, ou incompatibilidade...pode ser?

Bia N.

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

Ir para o topo Ir para baixo

legenda do gráfico Empty Re: legenda do gráfico

Mensagem por Prof. Marcos Seg maio 25, 2020 8:48 am

Oi de novo, Keny.

Estranho, isto não deveria ter qualquer relação com a versão do Rstudio. Mas veja, uma coisa importante: a legenda só irá aparecer na parte externa do gráfico se ele for precedido da funçãom par com o argumento xpd=T. E se você fechar uma janela de gŕafico aberta, o efeito do par "vai embora", de forma que você tem que executar de novo. Será que pode ser isso?
Prof. Marcos
Prof. Marcos

Mensagens : 678
Data de inscrição : 23/12/2015
Idade : 42
Localização : Maceió, AL

https://cantinhodor.wordpress.com/

Ir para o topo Ir para baixo

legenda do gráfico Empty Re: legenda do gráfico

Mensagem por Bia N. Seg maio 25, 2020 11:16 am

Agora foi!! Ficou bonitinho Very Happy

Dentro da janela ainda aparece cortado, mas em uma nova ficou certo! Obrigada!

Bia N.

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

Ir para o topo Ir para baixo

legenda do gráfico Empty Re: legenda do gráfico

Mensagem por Prof. Marcos Ter maio 26, 2020 8:56 am

Show! Very Happy
Prof. Marcos
Prof. Marcos

Mensagens : 678
Data de inscrição : 23/12/2015
Idade : 42
Localização : Maceió, AL

https://cantinhodor.wordpress.com/

Ir para o topo Ir para baixo

legenda do gráfico Empty Re: legenda do gráfico

Mensagem por kmariguele Qui maio 28, 2020 12:06 pm

Oi Bia

Poderia compartilhar o seu script que funcionou? Estou com o mesmo problema, também depois de uma atualização...

Obrigado

Keny

kmariguele

Mensagens : 7
Data de inscrição : 20/04/2020

Ir para o topo Ir para baixo

legenda do gráfico Empty Re: legenda do gráfico

Mensagem por Bia N. Qui maio 28, 2020 4:15 pm

Oi Keny!
Que doideira! Claro, vou colar aqui embaixo.
Para ficar menos confuso, copiei apenas essa parte do gráfico. Mas o exemplo foi feito com os dados do exercício do módulo 3, que eu chamei de p3b (primeira linha do comando). Vê se vai funcionar!


p3b<-read.table("dados_atividade3.txt", header = T, dec=".", sep="\t")

## Tirando a legenda de dentro do gráfico
par(xpd=T, mar=c(6,6,6,3))

#Gráfico:
dev.new(width=7, height=7)
par(xpd=T, mar=c(6,6,6,3))#margens ao redor do gráfico
plot(p3b$Produtividade~p3b$Adubo, xlab= "adubo", ylab= "produtividade", ylim=c(12,23), col=cores2, pch=19)
legend(x=13, y= 25.5, legend= levels(p3b$Cultivo), col=cores2, pch=19)

Bia N.

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

Ir para o topo Ir para baixo

legenda do gráfico Empty Re: legenda do gráfico

Mensagem por Bia N. Qui maio 28, 2020 4:19 pm

Anh, desculpa. No caso, teria ainda que criar o objeto cores também.

cores2<-c("yellow4", "blue2")

Aí ficou assim:

legenda do gráfico Grafic10

Bia N.

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

Ir para o topo Ir para baixo

legenda do gráfico Empty Re: legenda do gráfico

Mensagem por Alan_blefor Qui maio 28, 2020 11:21 pm

Bia N. escreveu:Oi Keny!
Que doideira! Claro, vou colar aqui embaixo.
Para ficar menos confuso, copiei apenas essa parte do gráfico. Mas o exemplo foi feito com os dados do exercício do módulo 3, que eu chamei de p3b (primeira linha do comando). Vê se vai funcionar!


p3b<-read.table("dados_atividade3.txt", header = T, dec=".", sep="\t")

## Tirando a legenda de dentro do gráfico
par(xpd=T, mar=c(6,6,6,3))

#Gráfico:
dev.new(width=7, height=7)
par(xpd=T, mar=c(6,6,6,3))#margens ao redor do gráfico
plot(p3b$Produtividade~p3b$Adubo, xlab= "adubo", ylab= "produtividade", ylim=c(12,23), col=cores2, pch=19)
legend(x=13, y= 25.5, legend= levels(p3b$Cultivo), col=cores2, pch=19)



Vlw pela dicaBia, com a dica consegui fazer o gráfico do Qui-quadrado com a legenda fora do gráfico.
Alan_blefor
Alan_blefor

Mensagens : 11
Data de inscrição : 30/03/2020

Ir para o topo Ir para baixo

legenda do gráfico Empty Re: legenda do gráfico

Mensagem por Bia N. Sex maio 29, 2020 1:35 am

Opa! Que bom!

Bia N.

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

Ir para o topo Ir para baixo

legenda do gráfico Empty Re: legenda do gráfico

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


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