Вы можете использовать следующие методы для создания точечной диаграммы по группам в R:
Метод 1: используйте базу R
plot(df$x, df$y, col=as. factor (df$group))
Способ 2: используйте ggplot2
library (ggplot2)
ggplot(df, aes (x, y)) +
geom_point( aes (color=group))
В следующих примерах показано, как использовать каждый метод на практике со следующим фреймом данных:
#create data frame
df <- data.frame(x=c(1, 2, 2, 3, 5, 6, 7),
y=c(4, 8, 7, 9, 15, 14, 20),
group=c('A', 'A', 'A', 'B', 'B', 'B', 'B'))
#view data frame
df
x y group
1 1 4 A
2 2 8 A
3 2 7 A
4 3 9 B
5 5 15 B
6 6 14 B
7 7 20 B
Пример 1: График рассеивания по группам в базе R
В следующем коде показано, как создать диаграмму рассеяния в базе R, где точки окрашены в зависимости от значения переменной «группа»:
#create scatterplot with points colored by group
plot(df$x, df$y, col=as. factor (df$group), pch= 19 )

Цвет каждой точки отражает значение переменной «группа» во фрейме данных.
Точки со значением «группы» A показаны черным цветом, а точки со значением «группы» B показаны красным.
Обратите внимание, что pch=19 указывает R использовать сплошные круги для точек на графике.
Вы можете найти полный список значений pch и соответствующих им форм здесь .
Пример 2: Точечная диаграмма по группам в ggplot2
В следующем коде показано, как создать диаграмму рассеяния в ggplot2, где точки окрашены в зависимости от значения переменной «группа»:
library (ggplot2)
#create scatterplot with points colored by group
ggplot(df, aes (x, y)) +
geom_point( aes (color=group))

Обратите внимание, что вы также можете изменить цвета и размер точек на графике:
library (ggplot2)
#create scatterplot with points colored by group
ggplot(df, aes (x, y)) +
geom_point( aes (color=group), size= 3 ) +
scale_color_manual(values=c('purple', 'steelblue'))

Обратите внимание, что мы увеличили размер точки с помощью аргумента size , а цвета точек соответствуют цветам, указанным в аргументе scale_color_manual() .
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи с диаграммами рассеяния в R:
Как пометить точки на диаграмме рассеяния в R
Как создать диаграмму рассеяния с линией регрессии в R
Как использовать функцию джиттера для диаграмм рассеяния в R