Используйте разные цвета/формы для диаграммы рассеяния с двумя группами в R
В этой статье мы рассмотрим различные подходы к цветам/формам для диаграмм рассеяния с двумя группами в языке программирования R.
График в R можно использовать для визуального анализа данных. Библиотека ggplot2 в R используется для создания визуализации данных. Пакет можно скачать и установить в рабочее пространство с помощью следующей команды:
install.packages("ggplot2")Фрейм данных может использоваться для хранения организованных табличных данных, расположенных в строках и столбцах. Данные столбца могут быть сгруппированы. Затем точки данных можно классифицировать по сегментам аргументов на основе значений, содержащихся в этих группах.
Объект ggplot можно использовать для создания объекта графика. Он также принимает столбцы фрейма данных для построения и аргументирует эстетические сопоставления, где в столбцах фрейма данных можно отображать такие атрибуты, как цвет, размер и форма.
Метод имеет следующий синтаксис:
ggplot(data , aes = )
Arguments :
- data – The data to plot
- aes – The aesthetic mappings to use
К объекту ggplot можно добавить метод geom_point(), чтобы отображать данные в виде точек, представляющих значения данных.
Использование функции geom_point() для окрашивания точек, соответствующих различным группам
Параметр цвета можно добавить к эстетическим отображениям объекта ggplot, чтобы придать цвета значениям точек данных. Параметр цвета может быть назначен сгруппированному столбцу фрейма данных, который по умолчанию назначает разные цвета значениям, принадлежащим к разным группам.
ggplot(data, aes (...,colour = ))
R
# installing the reqd librarylibrary("ggplot2")# creating a data framedata_frame <- data.frame( col1 = c("g1","g2","g1","g1", "g2","g1","g2","g2"), col2 = 1:8, col3 = LETTERS[1:8])print ("Data Frame")print(data_frame)# plotting the col1 and col2 of data frame# and assigning colors based on col1ggplot(data_frame,aes(col1,col2,colour=col1))+geom_point() |
Выход
[1] "Data Frame" > print(data_frame) col1 col2 col3 1 g1 1 A 2 g2 2 B 3 g1 3 C 4 g1 4 D 5 g2 5 E 6 g1 6 F 7 g2 7 G 8 g2 8 H
Изменение цвета нанесенных точек
Чтобы обеспечить настраиваемые цвета для точек данных, можно использовать метод пакета ggplot2, scale_color_manual. Этот метод можно использовать для получения как шестнадцатеричного, так и строкового вектора значений цвета. Затем вектор присваивается параметру values этого метода. Длина вектора должна быть эквивалентна количеству групп. Затем метод назначает разные цвета в соответствии с сгруппированным столбцом фрейма данных.
scale_color_manual(values = col-vec)
Arguments :
- col-vec – The color vector
R
# installing the reqd librarylibrary("ggplot2")# creating a data framedata_frame <- data.frame( col1 = c("g1","g2","g1","g1", "g2","g1","g2","g2"), col2 = 1:8, col3 = LETTERS[1:8])print ("Data Frame")print(data_frame)# assigning colors to different grouped# pointscols <- c("blue","orange")# plotting the col1 and col2 of data frame# and assigning colors based on col1ggplot(data_frame,aes(col1,col2,colour=col1))+geom_point()+ # assigning customised colours to the plot scale_color_manual(values = cols) |
Выход
[1] "Data Frame" > print(data_frame) col1 col2 col3 1 g1 1 A 2 g2 2 B 3 g1 3 C 4 g1 4 D 5 g2 5 E 6 g1 6 F 7 g2 7 G 8 g2 8 H
Изменение формы нанесенных точек
Точкам данных на графике можно присвоить различные формы. По умолчанию окружности строятся в указанных точках. Если мы хотим настроить форму, значение номера формы можно указать в методе geom_point() в качестве аргумента формы. Например, фигура № 15 используется для построения квадратов, а фигура № 17 — треугольников.
geom_point(shape = )
R
# installing the reqd librarylibrary("ggplot2")# creating a data framedata_frame <- data.frame( col1 = c("g1","g2","g1","g1", "g2","g1","g2","g2"), col2 = 1:8, col3 = LETTERS[1:8])print ("Data Frame")print(data_frame)# assigning colors to different grouped# pointscols <- c("blue","orange")# plotting the col1 and col2 of data frame# and assigning square based shapeggplot(data_frame,aes(col1,col2,colour=col1))+geom_point(shape = 15) |
Выход
[1] "Data Frame" > print(data_frame) col1 col2 col3 1 g1 1 A 2 g2 2 B 3 g1 3 C 4 g1 4 D 5 g2 5 E 6 g1 6 F 7 g2 7 G 8 g2 8 H
Назначение фигур на основе групп нанесенных точек
Если мы хотим отобразить группы в разных формах и цветах, мы можем указать и использовать оба параметра в эстетических сопоставлениях объекта ggplot. Форма и цвет могут быть назначены сгруппированному столбцу фрейма данных. В приведенном ниже фрагменте кода кружки оранжевого цвета назначаются группе «g1», а треугольники синего цвета — группе «g2».
R
# installing the reqd librarylibrary("ggplot2")# creating a data framedata_frame <- data.frame( col1 = c("g1","g2","g1","g1", "g2","g1","g2","g2"), col2 = 1:8, col3 = LETTERS[1:8])print ("Data Frame")print(data_frame)# assigning colors to different grouped pointscols <- c("blue","orange")# plotting the col1 and col2 of data frame and# assigning square based shapeggplot(data_frame,aes(col1,col2,colour=col1,shape=col1))+ geom_point() |
Выход
[1] "Data Frame" > print(data_frame) col1 col2 col3 1 g1 1 A 2 g2 2 B 3 g1 3 C 4 g1 4 D 5 g2 5 E 6 g1 6 F 7 g2 7 G 8 g2 8 H
Однако, если мы не назначаем параметр цвета точкам, принадлежащим к разным группам, то разным точкам данных назначаются только разные фигуры черного цвета.
R
# installing the reqd librarylibrary("ggplot2")# creating a data framedata_frame <- data.frame( col1 = c("g1","g2","g1","g1", "g2","g1","g2","g2"), col2 = 1:8, col3 = LETTERS[1:8])print ("Data Frame")print(data_frame)# assigning colors to different grouped# pointscols <- c("blue","orange")# plotting the col1 and col2 of data frame# and assigning square based shapeggplot(data_frame,aes(col1,col2,shape=col1))+ geom_point() |
Выход
[1] "Data Frame" > print(data_frame) col1 col2 col3 1 g1 1 A 2 g2 2 B 3 g1 3 C 4 g1 4 D 5 g2 5 E 6 g1 6 F 7 g2 7 G 8 g2 8 H