Como sobrepor gráficos em r (com exemplos)


Você pode usar as funções lines() e points() para sobrepor vários caminhos em R:

 #create scatterplot of x1 vs. y1
plot(x1, y1)

#overlay line plot of x2 vs. y2
lines(x2, y2)

#overlay scatterplot of x3 vs. y3
points(x2, y2)

Os exemplos a seguir mostram como usar cada uma dessas funções na prática.

Exemplo 1: Como sobrepor caminhos de linha em R

O código a seguir mostra como sobrepor gráficos de três linhas em um único gráfico em R:

 #define datasets
x1 = c(1, 3, 6, 8, 10)
y1 = c(7, 12, 16, 19, 25)

x2 = c(1, 3, 5, 7, 10)
y2 = c(9, 15, 18, 17, 20)

x3 = c(1, 2, 3, 5, 10)
y3 = c(5, 6, 7, 15, 18)

#create line plot of x1 vs. y1
plot(x1, y1, type=' l ', col=' red ')

#overlay line plot of x2 vs. y2
lines(x2, y2, col=' blue ')

#overlay line plot of x3 vs. y3
lines(x3, y3, col=' purple ')

#add legend
legend(1, 25, legend=c(' Line 1 ', ' Line 2 ', ' Line 3 '),
       col=c(' red ', ' blue ', ' purple '), lty= 1 ) 

Sobrepondo gráficos de linha em R com legenda

Exemplo 2: Como sobrepor nuvens de pontos em R

O código a seguir mostra como sobrepor duas nuvens de pontos em um único gráfico em R:

 #define datasets
x1 = c(1, 3, 6, 8, 10)
y1 = c(7, 12, 16, 19, 25)

x2 = c(1, 3, 5, 7, 10)
y2 = c(9, 15, 18, 17, 20)

#create scatterplot of x1 vs. y1
plot(x1, y1, col=' red ', pch= 19 )

#overlay scatterplot of x2 vs. y2
points(x2, y2, col=' blue ', pch= 19 )

#add legend
legend(1, 25, legend=c(' Data 1 ', ' Data 2 '), pch=c(19, 19), col=c(' red ', ' blue '))

Sobreposição de gráficos de dispersão em R com legenda

Observe que o argumento pch especifica a forma dos pontos no gráfico. Um valor pch de 19 especifica um círculo preenchido.

Você pode encontrar uma lista completa de valores de pch e seus formulários correspondentes aqui .

Recursos adicionais

Os tutoriais a seguir explicam como executar outras funções de rastreamento comuns em R:

Como plotar vários boxplots em um único gráfico em R
Como traçar múltiplas linhas em um gráfico em R

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *