Как построить несколько графиков на одном графике в r (3 примера)


Вы можете использовать следующие методы для рисования нескольких графиков на одном графике в R:

Способ 1: нарисуйте несколько линий на одном графике

 #plot first line
plot(x, y1, type=' l ')

#add second line to plot
lines(x, y2)

Способ 2: создать несколько путей рядом

 #define plotting area as one row and two columns
by(mfrow = c(1, 2))

#create first plot
plot(x, y1, type=' l ')

#create second plot
plot(x, y2, type=' l ')

Метод 3: создание нескольких вертикально сложенных графиков

 #define plotting area as two rows and one column
by(mfrow = c(2, 1))
  
#create first plot
plot(x, y1, type=' l ')

#create second plot
plot(x, y2, type=' l ')

Следующие примеры показывают, как использовать каждый метод на практике.

Пример 1. Рисование нескольких линий на одном графике

Следующий код показывает, как нарисовать две линии на одном графике в R:

 #define data to plot
x <- 1:10
y1 <- c(2, 4, 4, 5, 7, 6, 5, 8, 12, 19)
y2 <- c(2, 2, 3, 4, 4, 6, 5, 9, 10, 13)

#plot first line
plot(x, y1, type=' l ', col=' red ', xlab=' x ', ylab=' y ')

#add second line to plot
lines(x, y2, col=' blue ')

R построить несколько графиков на одном графике

Пример 2. Создание нескольких путей рядом

Следующий код показывает, как использовать аргумент par() для построения нескольких графиков рядом друг с другом:

 #define data to plot
x <- 1:10
y1 <- c(2, 4, 4, 5, 7, 6, 5, 8, 12, 19)
y2 <- c(2, 2, 3, 4, 4, 6, 5, 9, 10, 13)

#define plotting area as one row and two columns
by(mfrow = c(1, 2))

#create first line plot
plot(x, y1, type=' l ', col=' red ')

#create second line plot
plot(x, y2, type=' l ', col=' blue ', ylim=c(min(y1), max(y1))) 

Обратите внимание, что мы использовали аргумент ylim() во втором графике, чтобы гарантировать, что оба графика имеют одинаковые пределы по оси Y.

Пример 3. Создание нескольких вертикально сложенных графиков

Следующий код показывает, как использовать аргумент par() для построения нескольких вертикально расположенных графиков:

 #define data to plot
x <- 1:10
y1 <- c(2, 4, 4, 5, 7, 6, 5, 8, 12, 19)
y2 <- c(2, 2, 3, 4, 4, 6, 5, 9, 10, 13)

#define plotting area as two rows and one column
par(mfrow = c(2, 1), mar = c(2, 4, 4, 2))
#create first line plot
plot(x, y1, type=' l ', col=' red ')

#create second line plot
plot(x, y2, type=' l ', col=' blue ', ylim=c(min(y1), max(y1))) 

Обратите внимание, что мы использовали аргумент mar для указания полей (нижнего, левого, верхнего, правого) области графика.

Примечание. По умолчанию используется mar = c(5.1, 4.1, 4.1, 2.1).

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в R:

Как построить несколько столбцов в R
Как нарисовать легенду вне графика в R
Как создать логарифмический график в R

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *