Независимо от каких-либо ранее существовавших знаний R, Rpy2 и ggplot2, я тем не менее хотел бы создать диаграмму рассеяния тривиальной таблицы из Python.
Чтобы настроить это, я только что установил:
- Убунту 11.10 64 бит
R version 2.14.2
(от зеркала заднего вида)ggplot2
(черезR> install.packages('ggplot2')
)rpy2-2.2.5
(доeasy_install
)
После этого я могу построить несколько примеров кадров данных из интерактивного сеанса R, используя ggplot2.
Однако, когда я просто пытаюсь импортировать ggplot2
, как я видел в примере, который я нашел в Интернете, я получаю следующую ошибку:
from rpy2.robjects.lib import ggplot2
File ".../rpy2/robjects/lib/ggplot2.py", line 23, in <module>
class GGPlot(robjects.RObject):
File ".../rpy2/robjects/lib/ggplot2.py", line 26, in GGPlot
_rprint = ggplot2_env['print.ggplot']
File ".../rpy2/robjects/environments.py", line 14, in __getitem__
res = super(Environment, self).__getitem__(item)
LookupError: 'print.ggplot' not found
Может ли кто-нибудь сказать мне, что я делаю неправильно? Как я уже сказал, оскорбительный импорт происходит из онлайн-примера, поэтому вполне может быть, что есть какой-то другой способ, которым я должен использовать gplot2 через rpy2.
Для справки и не связанной с проблемой выше, вот пример фрейма данных, который я хотел бы построить, как только я получу импорт для работы (не должно быть проблем с просмотром примеров). Идея состоит в том, чтобы создать точечную диаграмму с длинами по оси x, процентами по оси Y, а логическое значение используется для окрашивания точек, которые затем я хотел бы сохранить в файл (либо изображение, либо pdf). Учитывая, что эти требования очень ограничены, приветствуются и альтернативные решения.
original.length row.retained percentage.retained
1 1875 FALSE 11.00
2 1143 FALSE 23.00
3 960 FALSE 44.00
4 1302 FALSE 66.00
5 2016 TRUE 87.00