轮廓图plot()就够用了吧,如果要图方便的话,给你几个选择吧,MASS包中parcoord函数,lattice包中的parallel(),ggplot2包中的ggpcp()函数,以及iplot包中的ipcp()函数。
雷达图用stars()就足够了。
调和曲线的话既可以用谢老大的MSG包中的andrews.curve()函数也可以用Jaroslav Myslivec的andrews包中andrews()函数。
具体参数见函数的help文档。
最后薛毅那本《统计建模与R软件》上对轮廓图和调和曲线分别也各有一段代码能用,给楼主附上:
#轮廓图
outline <- function(x, txt = TRUE){
if (is.data.frame(x) == TRUE)
x <- as.matrix(x)
m <- nrow(x); n <- ncol(x)
plot(c(1,n), c(min(x),max(x)), type = "n",
main = "The outline graph of Data",
xlab = "Number", ylab = "Value")
for(i in 1:m){
lines(x[i,], col=i)
if (txt == TRUE){
k <- dimnames(x)[[1]]
text(1+(i-1)%%n, x[i,1+(i-1)%%n], k)
}
}
}
#调和曲线图
unison <- function(x){
if (is.data.frame(x) == TRUE)
x <- as.matrix(x)
t <- seq(-pi, pi, pi/30)
m <- nrow(x); n<-ncol(x)
f <- array(0, c(m,length(t)))
for(i in 1:m){
f[i,] <- x[i,1]/sqrt(2)
for( j in 2:n){
if (j%%2 == 0)
f[i,] <- f[i,]+x[i,j]*sin(j/2*t)
else
f[i,] <- f[i,]+x[i,j]*cos(j%/%2*t)
}
}
plot(c(-pi,pi), c(min(f), max(f)), type = "n", main = "调和曲线图",
xlab = "t", ylab = "f(t)")
for(i in 1:m) lines(t, f[i,] , col = i)
}
应该很全了吧,希望对楼主有用,祝lz多元学习愉快
|