누구나 함수 내에서 변수 이름을 사용할 수 있는지 궁금합니다. 변수를 정렬하고 비트 맵을 생성하는 도트 플롯을 조합했습니다. 그러나 R
을 사용하여 변수 이름을 plot
제목으로 전달할 수 없습니다.변수 이름을 플로팅 함수 제목에 전달하십시오.
예 데이터
함수의 둘째 줄에id<-c(1,2,3)
blood<-c(1,2,10)
weight<-c(1,2,13)
mydata<-as.data.frame(cbind(id,blood,weight))
mydata$blood
#######SORTED DOT PLOT####
Dplotter<-function (id,x,Title=""){
if (is.null(Title)) {Title=""} else {Title=Title}
DIR<-paste("C:/temp/WholePlots/New/",Title,".bmp",sep="")
D<-as.data.frame(cbind(id,x))
x1<-as.data.frame(D[order(x),])
bmp(DIR)
dotchart(x1$x,labels=id,main=Title,pch=16)
dev.off()
}
###############
Dplotter(mydata$id,mydata$blood,"Blood")
Dplotter(mydata$id,mydata$weight,"Weight")
, 그래서 I '이 걸치는 것이
`if (is.null(Title)) {Title=varname(x)} else {Title=Title}`
같은 가변 이름 것을 전달하고자 기능 제목 필드에 "Blood"를 넣어야합니다. (예 : Dplotter (mydata $ id, mydata $ blood)
기본적으로 함수의 변수 이름에 어떻게 붙여 넣을 수 있습니까? 하나는 제목에서 데이터 세트의 이름을 취할 수 있다면 대신
mydata$blood
을 받고, 당신은 단지 "피"를 얻을 있도록 는, (나는 들었다 데이터 세트를 연결하지 않고도 나쁜 연습) 더 나은 것 제목에.변수 이름에 붙여 넣기가 쉬운 솔루션을 찾지 못했습니다. 짐작할 수 있듯이 변수 이름을
paste()
함수에 넣으면 변수 값이 반환되므로 ( 플롯 제목은 변수 이름 대신 값으로 채워짐). 나는 또한 내가 단지 데이터 세트와 ID를 넣어, 다음 기능을 가질 수 있도록, 더욱 기능을 자동화하고 싶습니다는 데이터 집합의 각 변수에 대한 을 반복했다. 분명히 이것은 질문 1을 먼저 해결해야합니다. 그렇지 않으면 제목과 파일 이름 모두에 문제가 발생합니다.
대단히 감사합니다. 그것은 정말 잘 작동합니다. 누구나 2 (질문 2, 위 참조)하는 방법에 대한 제안 사항이 있습니까? 예를 들어 foo plot을 다른 함수 "PlotALL"내에서 실행하면 데이터 세트의 모든 변수가 하나씩 foo plot으로 전달됩니다. 이렇게하면 ## PlotAll (id, mydata) 을 쓰고 모든 그래프를 인쇄 할 수 있습니다. 많은 감사합니다 –