Эстетика размера ggplot с маленькими точками

Это, вероятно, простой вопрос, но я не знаю ответа на макушку. Можно ли изменить масштаб точек в ggplot, не нарушая эстетику вашего размера?

В основном, скажем, у меня есть следующее:

data <- data.frame(size=c(1, 1, 2, 2, 2), x=1:5, y=1:5, color=factor(c(0, 0, 1, 1, 1)))
cols <- unique(data$color)
names(cols) <- c("group 1", "group 2")
sols <- unique(data$size)
names(sols) <- c("group 1", "group 2")

Я могу построить это так:

ggplot(data,aes(x=x, y=y, size=size, color=color)) +
  geom_point() +
  scale_color_discrete("Dot", labels=names(cols)) +
  scale_size_continuous("Dot", breaks=sols)

который показывает точки как:

введите описание изображения здесь

Это выглядит великолепно, но, скажем, теперь у меня есть 1000 наблюдений моих данных, а не только 5. Внезапно мой график сильно перегружен точками, поскольку точки группы 2 настолько велики. Как мне изменить размеры точек, чтобы сделать их более подходящими по размеру, чтобы я мог разместить больше точек без наложения точек? Я рассмотрел geom_density, но он не очень подходит для моих целей, и я предпочел бы визуализацию диаграммы рассеяния.

Моя цель - некая функция, которая меняет мои точки так, что точки в целом просто меньше, чем сейчас, с соответствующей пропорцией размера. Чтобы сделать вещи более разумными, как только я это сделаю, я буду делать лог-преобразование переменной размера, чтобы сделать вещи лучше пропорциональными (особенно, поскольку любое общее изменение размеров точек, вероятно, приведет к тому, что меньшие точки будут почти невидимыми малыми), Если есть какой-то лучший способ сделать это, я весь слух! Спасибо, парни.

1 ответ

Догадаться. Можно использовать scale_size() функция для непосредственного сопоставления со значениями размера следующим образом (с использованием исходного примера):

ggplot(data,aes(x=x, y=y, size=size, color=color)) +
  geom_point() +
  scale_color_discrete("Dot", values=cols) +
  scale_size_continuous("Dot", breaks=sols) +
  scale_size(range=c(0.5, 2))

Другие вопросы по тегам