ggplot2: круговые диаграммы вместо точек на диаграмме рассеяния xy - PullRequest
2 голосов
/ 20 октября 2011

У меня есть четырехмерный набор данных, давайте назовем переменные x, y, z и r.Существует не более одной записи для каждой комбинации x и y.В настоящее время у меня есть диаграмма рассеяния, где я строю для каждой записи точку в позиции (x, y) и размере z.

ggplot(aes(x=x,y=y)) + geom_point(aes(size=z))

Это дает хороший график, но теперь я хотел бы его "обновить"следующим образом: я хочу заменить каждую точку круговой диаграммой, и размер круговой диаграммы должен быть таким же, как у точки.Пирог состоит из двух секций, одной синей и оранжевой, занимающих пропорцию r от пирога (r всегда от 0 до 1).

Есть идеи, как сделать это элегантно?

Приветствия

Ответы [ 2 ]

1 голос
/ 01 августа 2017

Вы можете использовать ggforce для реализации функции, но кто-то уже сделал это для вас и создал другой пакет R под названием scatterpie, вы можете найти его здесь

1 голос
/ 16 сентября 2012

Это делает трюк:

ggplot(aes(x=x,y=y)) + geom_point(aes(size=z)) + stat_spoke(aes(angle=r*2*pi, radius=3*z))

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