Создайте Редактируемые сюжеты из R

Я создаю серию сюжетов в R (я использую ggplot2, но это не важно), и я хочу быть в состоянии спасти свою продукцию, таким образом, я могу тогда отредактировать его для использования furthur, Например, я мог бы хотеть перенести легенды или приспособить цвета и т.д. Я видел, что у ggplot2 есть спасти команда, но это, кажется, производит PDF или битовые массивы, ни один из которых особенно редактируемые

Как другие люди делают это? Какие-либо хорошие идеи?

Вот некоторый пример кода, чтобы написать типовой сюжет;

library(ggplot2)
dataframe<-data.frame(fac=factor(c(1:4)),data1=rnorm(400,100,sd=15))
dataframe$data2<-dataframe$data1*c(0.25,0.5,0.75,1)
dataframe
testplot<-qplot(x=fac, y=data2,data=dataframe, colour=fac, geom=c("boxplot", "jitter"))
testplot

Спасибо

Пол.

9
задан PaulHurleyuk 12 January 2010 в 10:49
поделиться

3 ответа

Спасибо за ответы, я играл с этим, и после некоторой помощи у моего друга Google я нашел пакет CAIRO , который позволяет создавать файлы SVG, Затем я могу редактировать их в Inkscape .

library(Cairo)
Cairo(600,600,file="testplot.svg",type="svg",bg="transparent",pointsize=8, units="px",dpi=400)
testplot
dev.off()
Cairo(1200,1200,file="testplot12200.png",type="png",bg="transparent",pointsize=12, units="px",dpi=200)
testplot
dev.off()

Теперь мне просто нужно играть с различными настройками, чтобы получить мой участок так же хорошо, как его можно перед записью файла.

4
ответ дан 4 December 2019 в 13:47
поделиться

С GGPLOT и решеткой, вы можете использовать Сохранить , чтобы сохранить объект сюжета на диск, а затем нагрузка позже и измените его. Например:

save(testplot, file = "test-plot.rdata")

# Time passes and you start a new R session
load("test-plot.rdata")
testplot + opts(legend.position = "none")
testplot + geom_point()
4
ответ дан 4 December 2019 в 13:47
поделиться

Другие редактируемые форматы:

Взгляните Справка (устройства) для других форматов, которые доступны SVG , pictex и xfig , все из которых редактируются для большего или меньшего количества.

Обратите внимание, что PDF могут быть отредактированы, например, с помощью инструмента OmniGraffle , доступных для OSX Apple.

Другие способы записи данных сюжета:

Кроме того, вы можете записать команды R на графическую подсистему для повторения ее позже - посмотрите Dev.copy :

 Most devices (including all screen devices) have a display list
 which records all of the graphics operations that occur in the
 device. 'dev.copy' copies graphics contents by copying the display
 list from one device to another device.  Also, automatic redrawing
 of graphics contents following the resizing of a device depends on
 the contents of the display list.

Использование RScript Создайте повторяемый, редактирующий график:

Я обычно принимаю третью стратегию, которая должна копировать мою сессию R в файл RSScript, который я могу работать несколько раз и настраивать команды построения, пока не сделает то, что я хочу:

#!/usr/bin/Rscript
x = 1:10
pdf("myplot.pdf", height=0, width=0, paper="a4")
plot(x)
dev.off();
7
ответ дан 4 December 2019 в 13:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: