2011-12-13 4 views
1

У меня есть скрипт python, использующий библиотеку pyper (каналы для R), и я пытаюсь получить какой-то выход из ggplot2. Я пробовал использовать метод «ggsave» и «device (...); dev.off() и ничего не выводится.ggplot2 no plot becase ggsave no save

Мне нужно использовать pyper из-за использования 64 бит каждый (python и R), поэтому rpy [2] для меня не вариант.

код выглядит следующим образом:

r("png(filename='test.png',width=720,height=540)") #comment if ggsave 
r("p<-ggplot(DB,aes(X,Y,group=cfg))") 
r("""p <- p + geom_path(aes(colour=factor(f1))) + scale_x_log10('X label') + 
    scale_y_continuous('Y label',breaks=myb,labels=myl) + 
    geom_point(data=subset(DB,pts==dot),aes(colour=factor(f1),size=factor(f2), 
    shape=factor(f3))) + labs(colour='l1',size='l2',shape='l3')""") 
r("print(p)") 
# r("ggsave(filename='test.png',width=10,height=7.5) #comment out if using png 
r("dev.off()")    # comment if using ggsave 

Файл не создается в любом случае. Я проверил, чтобы убедиться, что таблица данных БД содержит записи (1000). Что я могу попробовать?

+0

У вас есть каталог «test.png»? Что возвращает 'getwd()'? Мне интересно, написано ли это, но не там, где вы думаете. –

+0

Обнаружена проблема R с загрузкой библиотеки, но метод ggsave по-прежнему не обновляет файлы (с ними ничего не происходит). Метод png касается файлов, но в них нет ничего (все 1k с обновленным временем. getwd() возвращает каталог, из которого я запускаю скрипт python, и поиск в моей системе не нашел никаких других ' test.png. Спасибо! – user1096732

+0

Также попытались использовать устройство PDF с теми же результатами. – user1096732

ответ

2

Таким образом, все это выходит за рамки библиотек и переменных среды. Некоторые загруженные библиотеки, такие как ggplot2, не загружают все зависимости, например библиотеку дайджеста. Эта ошибка возникает только в части «print (p)» кода.

Кроме того, существуют различия в местоположениях библиотеки x64, которые необходимо установить правильно. Убедитесь, что переменные R_HOME и R_LIBS соответствуют вашей конфигурации.

Пипер, похоже, не сказал мне, что библиотеки не загружаются, он просто продолжался, поэтому qplot не загружался в R изначально. После того, как вы загрузите его в нужное место, вам нужно убедиться, что вы всегда используете учетную запись пользователя или учетную запись администратора (или у вас есть несколько путей в R_LIBS, но я не пробовал это).

qplot и ggsave работают нормально, если библиотеки загружены.

Благодарим за всех преданных людей и направления отладки!

+0

Рад, что вы все разобрались. Я хотел бы, чтобы хранители пипера знали об этом, так как загрузка библиотеки должна загружать все ее зависимости. –

Смежные вопросы