Как изменить форму точки в ggplot2


Вы можете использовать аргумент формы , чтобы изменить форму точек на диаграмме рассеивания ggplot2:

ggplot(df, aes(x=x, y=y)) +
 geom_point(shape= 19 )

Значение по умолчанию для формы — 19 (закрашенный круг), но вы можете указать любое значение от 0 до 25.

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

library (ggplot2)

#create data frame
df <- data.frame(x=0:25, y=0:25)

#create scatter plot
ggplot(df, aes(x=x, y=y)) +
 geom_point(shape=0:25, size= 4 ) 

В следующих примерах показано, как изменить аргумент shape на различных диаграммах рассеивания ggplot2.

Пример 1: создание графика с формой по умолчанию

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

library (ggplot2)

#create data frame
df <- data.frame(x=0:25, y=0:25)

#create scatter plot with default point shape
ggplot(df, aes(x=x, y=y)) +
 geom_point(size= 4 ) 

Поскольку мы не использовали аргумент формы для указания формы точки, ggplot2 использовал форму по умолчанию в виде закрашенного круга.

Пример 2: создание графика с пользовательской формой

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

library (ggplot2)

#create data frame
df <- data.frame(x=0:25, y=0:25)

#create scatter plot with custom point shape
ggplot(df, aes(x=x, y=y)) +
 geom_point(shape= 2 , size= 4 ) 

Пример 3: создание графика с формой на основе значения

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

library (ggplot2)

#create data frame
df <- data.frame(team=c('A', 'A', 'B', 'B', 'C', 'C'),
 points=c(8, 11, 13, 15, 19, 25),
 assists=c(4, 8, 7, 10, 11, 7))

#create scatter plot where point shape is based on team
ggplot(df, aes(x=points, y=assists, group=team)) +
 geom_point(aes(shape=team, color=team), size= 4 ) 

Обратите внимание, что форма и цвет точек на графике зависят от значения переменной team .

Обратите внимание, что ggplot2 также автоматически создает легенду в правой части графика, чтобы показать, какие точки соответствуют какой команде.

Примечание.Полную документацию по функции geom_point() можно найти здесь .

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

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

Как изменить заголовок легенды в ggplot2
Как повернуть метки осей в ggplot2
Как исправить в R: не удалось найти функцию «ggplot»