How to compute one optimized coordiante for each point groups as highlighted (blue)?

2 次查看(过去 30 天)
I have red points with X Y Z coordinates as below. I want to compute one optimized X Y Z coordinates for each point groups(blue drawing)

回答(1 个)

Pratheek
Pratheek 2023-4-27
Hey Abb,
If you need to compute groups from random points, you can use clustering techniques. Refer this link for more information: Cluster Analysis and Clustering Algorithms - MATLAB & Simulink (mathworks.com)
Once you have computed the groups, you can find the centroid of each group to obtain the optimized coordinate of each group.
% Set the number of points
n = 10;
% Generate random x, y, and z coordinates
x_coords = rand(n, 1);
y_coords = rand(n, 1);
z_coords = rand(n, 1);
% Create a matrix of coordinates
coords = [x_coords, y_coords, z_coords];
% Plot the points in 3D space
scatter3(coords(:,1), coords(:,2), coords(:,3), 'filled');
xlabel('X');
ylabel('Y');
zlabel('Z');
title('Random Points in 3D Space');
% Calculate the centroid of the points
centroid = mean(coords, 1);
% Plot the centroid in a different color and larger size
hold on;
scatter3(centroid(1), centroid(2), centroid(3), 100, 'r', 'filled');
hold off;

标签

产品


版本

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by