How to plot lines with unordered data points?

11 visualizzazioni (ultimi 30 giorni)
I have scanned x-y data for different line tracing. When I plot the points as a scatter, it gives a good presentation of the data, as shown in the figure below.
However, I want to separate out the data as different lines. Currently, the points are randomly aligned and the line plot shows a sketchy presentation (as shown in the figure below).
currently, the data are attached as 'xydata.mat' and excel sheet. I cannot find a way out that I can plot the data as three distinct lines. I want to As my data set contains more of these lines (some inclined), separating them out manually will be too much time consuming. Any ideas will be much appreciated.

Risposta accettata

Star Strider
Star Strider il 27 Ott 2022
One approach —
LD = load(websave('xydata','https://www.mathworks.com/matlabcentral/answers/uploaded_files/1171138/xydata.mat'));
T = LD.T;
TS = sortrows(T,1);
idx = [find([diff(TS.x)] > 100); size(T,1)];
s = diff([0; idx]);
C = mat2cell(table2array(TS), s, 2);
figure
hold on
for k = 1:numel(C)
plot(C{k}(:,1), C{k}(:,2))
end
hold off
xlabel('x')
ylabel('y')
.

Più risposte (0)

Prodotti


Release

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by