Hello. I want to plot a curve line.
When I used this, I got the graph.
I want to plot a red curve line without a blue stick. Could I get an idea to fix this code?
for i = 2:30:750
X = csvread('kth_hog2_only.csv');
Y = csvread('kth_hog2_only_class.csv');
X = X(:,1:i);
Mdl = fitcknn(X,Y,'NumNeighbors',3,...
'NSMethod','exhaustive','Distance','cosine',...
'Standardize',1);
rng(1); % For reproducibility
CVKNNMdl = crossval(Mdl, 'KFold', 5);
classAccuracy(i) = 100 - kfoldLoss(CVKNNMdl, 'LossFun', 'ClassifError')*100;
end
plot(classAccuracy)
xlabel('Number of Clusters')
ylabel('CV Sum of Squared Distances')

 Akzeptierte Antwort

Star Strider
Star Strider am 10 Apr. 2020

0 Stimmen

Without your data, providing exact code is not possible.
In the interim, try this:
[pks,locs] = findpeaks(classAccuracy);
figure
plot(locs, pks, '-r')
or this:
L = islocalmax(classAccuracy);
x = 1:numel(classAccuracy);
figure
plot(x(L), classAccuracy(L), '-r')
Both should give the same result.

2 Kommentare

Kong
Kong am 10 Apr. 2020
Thank you so much.
I used second method.
Star Strider
Star Strider am 11 Apr. 2020
As always, my pleasure!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Creating, Deleting, and Querying Graphics Objects finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by