контроль легенд в GGplot 2 - PullRequest
0 голосов
/ 08 мая 2020

Я хочу построить data.frame, но на легендах добавлен размер. Как контролировать размер точек, не увеличивая размер надписей?

df1 <- data.frame(name = c("peter", "peter", "peter", "peter", "jacob", "jacob"),
        test =c(10,8,4,2,7,5),
         something =c(100,80,40,20,77,55)
        )

df2 <- data.frame(name = c("Greg", "Lisa"),
              test =c(11,3.5),
              something =c(102,35)
             )

ggplot(df1, aes(x=test, y=something, color= name,size = 3)) +
  geom_point()+
 geom_point(data=df2, aes(x=test, y=something, color= name, size=7))

1 Ответ

1 голос
/ 08 мая 2020

Вы можете просто указать size в самом geom_point():

library(ggplot2)

df <- data.frame(name = c("peter", "peter", "peter", "peter", "jacob", "jacob"),
                 test =c(10,8,4,2,7,5),
                 something =c(100,80,40,20,77,55)
)


ggplot(df, aes(x=test, y=something, color= name)) +
    geom_point(size = 3)

enter image description here

Обновить

Если вы нужно все размер ваших пунктов должен быть 3, а не только в этом одном вызове geom_point(), вы можете просто обновить размер по умолчанию:

ggplot(df, aes(x=test, y=something, color= name)) +
    geom_point()

enter image description here

update_geom_defaults("point", list(size = 3))

ggplot(df, aes(x=test, y=something, color= name)) +
    geom_point()

enter image description here

Обновление 2:

В обновленном вопросе еще можно указать size на вызов geom_point(), если вы помещаете его за пределы aes() обертку:

ggplot(df1, aes(x=test, y=something, color= name)) +
    geom_point(size = 3)+
    geom_point(data=df2, aes(x=test, y=something, color= name), size=7)

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...