プロット2のようにRを使用してグラフの下に輪郭を追加するにはどうすればよいですか? 私はインターネット上で多くを検索し、Rでそれを行う方法の例が見つかりませんでした!グラフに沿ってアウトラインを追加する関数やパッケージはありますか?等高線のある3Dグラフ
#Function density probability
library(pbivnorm)
bsb <- function(t1,t2){
a1 <- sqrt(phi1/2)*(sqrt(((phi1+1)*t1)/(phi1*mu1))-sqrt(((phi1*mu1)/((phi1+1)*t1))))
a2 <- sqrt(phi2/2)*(sqrt(((phi2+1)*t2)/(phi2*mu2))-sqrt(((phi2*mu2)/((phi2+1)*t2))))
Phi2 <- pbivnorm(a1, a2, rho, recycle = TRUE)
b1 <- ((phi1+1)/(2*phi1*mu1))*sqrt(phi1/2)*(((phi1*mu1)/((phi1+1)*t1))^(1/2)+((phi1*mu1)/((phi1+1)*t1))^(3/2))
b2 <- ((phi2+1)/(2*phi2*mu2))*sqrt(phi2/2)*(((phi2*mu2)/((phi2+1)*t2))^(1/2)+((phi2*mu2)/((phi2+1)*t2))^(3/2))
fdp <- Phi2*b1*b2
return(fdp)
}
t1 <- seq(0.001,5,length=100)
t2 <- seq(0.001,5,length=100)
#Parameters
mu1=5
phi1=2
mu2=5
phi2=2
rho=0.9
z<-outer(t1,t2,bsb) # calculate density values
persp(t1, t2, z, # 3-D plot
main="Bivariate Birnbaum-Saunders",
col="lightgray",
theta=40, phi=10,
r=10,
d=0.9,
expand=0.5,
ltheta=90, lphi=80,
shade=0.9,
ticktype="detailed",
nticks=5)
ggplot2は、純粋に2Dです。プロットすると、ユーザーに角度を自由に変更できるため、3Dプロットをより便利にすることができます。 – alistaire
@alistaire、ggplot2/plotyを使用しない上記のグラフを等高線と結合するにはどうすればよいですか? – fsbmat
'trans3d'と' persp'によって返された変換行列では可能かもしれません。最低限、 'persp'の例が示すように、' lines'を使って何かを行うことができます。 – alistaire