[英]multidimensional (2D) function plot in R
我正在研究绘图函数,我遇到了persp
和curve
但是我无法跟随它们绘制2D函数。
他们是表面情节 ,是吗?
如果我[x,y] in [-3,3]
有一个像x^2 + y^2
[x,y] in [-3,3]
我该怎么办呢? 任何链接都会对现有的包(如果是多个)非常感激和批评? 金。
谢谢。
要使用persp
,您需要提供的值x
,值y
,和值z
的每个组合x
和y
。 最简单的方法是定义x
和y
,然后使用outer
创建一个跨越x
和y
的矩阵。 您需要指定将两个变量组合为outer
的第三个参数的方式,在本例中为函数+
:
x <- seq(-3,3,length.out=100)
y <- seq(-3,3,length.out=100)
z <- outer(x^2,y^2,`+`)
persp(x,y,z, col='blue')
您可能也有兴趣旋转结果。 以下是使用theta
参数的一些示例:
par(mar=c(1,1,1,1))
layout(matrix(1:4, nrow=2))
s=lapply(c(0,30,60,90), function(t) persp(x,y,z, col='blue', theta=t))
编辑 :我从你的评论中理解你想要这个表面的2D表示。 在基础R中获得它的最简单方法是使用z
矩阵的image
:
image(z)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.