
remove outliers from a circumference
2 次查看(过去 30 天)
显示 更早的评论
hi guys.. I have a series of points, those points generates a sort of circumference/ellipse in the 3d space ( intersection between a shpere and a cone).. i want to get rid of the outliers....I've tried using rmoutliers, but nothing.. can you help me?
0 个评论
采纳的回答
darova
2019-10-16
Here is an idea:
x0 = mean(x); % Choose some center point (maybe approximately)
y0 = mean(y);
[t,r] = cart2pol(x,y); % convert your data to polar system
[~,ix] = sort(t); % sort your data by angle
tol = 0.4; % some tolerance
ix1 = find(diff(r(ix) > tol); % find values where difference of radius is too big
ind = ix(ix1); % indices of outlier points
plot3(x(ind),y(ind),z(ind),'or')

2 个评论
darova
2019-10-17
Opps! Data should be replaced to 'origin'. Try:
[t,r] = cart2pol(x-x0,y-y0); % convert your data to polar system
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Polar Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!