R 无法访问和存储绘图

R 无法访问和存储绘图,r,plot,R,Plot,我尝试获取用于内核鉴别分析的内核密度估计图,我使用下一个代码: library("MASS") install.packages("rgl") install.packages("misc3d") install.packages("mvtnorm") install.packages("KernSmooth") install.packages("ks") library("ks") library("MASS") library("ks") data("iris") ir <- iri

我尝试获取用于内核鉴别分析的内核密度估计图,我使用下一个代码:

library("MASS")
install.packages("rgl")
install.packages("misc3d")
install.packages("mvtnorm")
install.packages("KernSmooth")
install.packages("ks")
library("ks")
library("MASS")
library("ks")
data("iris")
ir <- iris[,1:3]
ir.group <- iris[,5]
Hpi1 <- Hkda(x = ir, x.group = ir.group, bw = "plugin",
pilot = "samse", pre = "sphere")
Hpi2 <- Hkda.diag(x = ir, x.group = ir.group, bw = "plugin",
pilot = "samse", pre = "scale")
Hscv1 <- Hkda(x = ir, x.group = ir.group, bw = "scv", pre = "sphere")
Hscv2 <- Hkda.diag(x = ir, x.group = ir.group, bw = "scv", pre = "scale")
#As of ks 1.8.11, kda.kde has been subsumed into kda, so all prior calls to kda.kde can be replaced
#by kda. To reproduce the previous behaviour of kda, the command is kda(, kde.flag=FALSE)
#
kda(x = ir, x.group = ir.group, Hs = Hpi1)

kda(x = ir, x.group = ir.group, Hs = Hpi1, kde.flag=FALSE)

install.packages("scatterplot3d")
library(scatterplot3d)
scatterplot3d(iris[,1:3],color=c("red","blue","green")
[iris$Species], col.axis="blue", col.grid="lightblue",
main="scatterplot3d",pch=20,cex.symbols=2)
iris.f1<-kda(x = ir, x.group = ir.group, Hs = Hpi1)
iris.f2<-kda(x =ir,x.group = ir.group, Hs = Hscv1)

plot(iris.f1)
plot(iris.f2)
library(“MASS”)
安装程序包(“rgl”)
安装程序包(“misc3d”)
install.packages(“mvtnorm”)
安装程序包(“内核平滑”)
安装程序包(“ks”)
图书馆(“ks”)
图书馆(“弥撒”)
图书馆(“ks”)
数据(“iris”)

ir绘图生成所需的图形,问题是生成新图形时图形关闭。您可以通过打开pdf并在其中存储绘图来存储它们

pdf("Plots1.pdf", title="Plots Iri 1") #Opens the pdf
plot(iris.f1)
dev.off() #To close the opened pdf
pdf("Plots2.pdf", title="Plots Iri 2")
plot(iris.f2)
dev.off() #To close the opened pdf
这将为工作文件夹中的每个页面创建两个pdf,其中一个用于打印(以了解哪种类型是
getwd()


您发现了以下内容:

for(i in 1:3){ #Previously there are three different plots
   pdf(paste("plot", i,".pdf",sep=""))#Creates the pdf
   plot(cbind(iris[1],iris[i])) #Join all the plots in one
   dev.off() } #Close the pdf and the iteration
这段代码所做的是连接存储在pdf中的绘图,为了适应您的代码,您可能需要执行以下操作,尽管它与我之前发布的几乎相同:

pdf("Plots.pdf", title="Plots Iris")
plot(cbind(iris.f1, iris.f2))
dev.off()

谢谢您的帮助,但我无法打开此pdf,如果我在运行dev.off()之前尝试打开它,我会收到错误消息:此文件已打开或正在被其他应用程序使用,但当我运行dev.off()然后尝试打开pdf时,我会收到另一个错误消息:此文件无法打开,因为它没有页面。请告诉我如何打开此PDF!是的,您应该在关闭dev.off后打开。在此之前,它仍在创建文件。在
dev.off()
之后打开它时,确切的错误是什么?你能复印一下吗?我用了好几次,没有任何问题。但也许你需要明确地说在pdf中打印绘图…我尝试了很多次,但一次又一次地收到错误消息:打开文档时出错。这个文件无法打开,因为它没有页面。奇怪的是,可能有一个函数从基R屏蔽了
绘图
。但是很抱歉,我不能再进一步了。希望有人能帮助解决这个问题,我花了很多时间在谷歌上查找为什么会发生这种情况,但我还没有解决这个问题。