Matlab 如何用椭圆包围数据
假设我在同一个绘图中绘制不同维度的不同数据向量Matlab 如何用椭圆包围数据,matlab,plot,ellipse,Matlab,Plot,Ellipse,假设我在同一个绘图中绘制不同维度的不同数据向量(x1,y1),(x2,y2),我想用一个椭圆包围这个数据,一个椭圆代表(x1,y1),另一个椭圆代表(x2,y2)。Matlab能做到吗,还是不可能 如果这可以用Matlab实现,我是否也可以出于某些原因,让这个数据的一个点(x1,y1)位于椭圆之外?你想用椭圆围起来几个数据点(即x1和y1是数组还是标量)?椭圆的方向必须是任意的吗?你能举个例子,最好是一张图片吗?是的,x1和y1是Aray。椭圆应该与直线y=ax+b平行,例如a=-1.2,b=5
(x1,y1)
,(x2,y2)
,我想用一个椭圆包围这个数据,一个椭圆代表(x1,y1)
,另一个椭圆代表(x2,y2)
。Matlab能做到吗,还是不可能
如果这可以用Matlab实现,我是否也可以出于某些原因,让这个数据的一个点
(x1,y1)
位于椭圆之外?你想用椭圆围起来几个数据点(即x1和y1是数组还是标量)?椭圆的方向必须是任意的吗?你能举个例子,最好是一张图片吗?是的,x1和y1是Aray。椭圆应该与直线y=ax+b平行,例如a=-1.2,b=50。那么椭圆的方程是什么?尝试旋转椭圆应该是小菜一碟。如果这是太多的工作,你可以在linkOk上找到一个文件交换,谢谢Patrik的建议。我可以在绘图中画椭圆,但我的问题是在我的数据中选择最好的轴和椭圆的中心。你需要两个完全不同的任务。首先在整个数据周围画一个椭圆是很容易的。椭圆方程为:(x-x0)^2/rx^2+(y-y0)^2/ry^2=1
,其中x,y是场,x0,y0是椭圆中心的坐标,rx,ry是x或y方向的半径。如果你能在绘图中画一个椭圆,只需将(max(x1)-(min(x1))/2
作为x的半径,对y做同样的处理。然后取(max(x)-rx
得到x0和y方向的相同值。现在你已经拥有了你所需要的一切。