0
我想繪製正態分佈圖,但通過循環繪製同一圖中的多個繪圖。對於第一次迭代,其精確的3個繪圖在一個圖中,但在其他3個圖中繪製只有一個繪圖。這裏是代碼在matlab中通過循環在一個圖中繪製多個圖
load iris.dat;
iris;
number_of_features = 4;
classes = iris(:,5);
number_of_classes = length(unique(classes));
for class_number = 1:number_of_classes
likelihood{class_number} = struct;
for feature_number = 1:number_of_features
likelihood{class_number}.pd{feature_number} = fitdist(iris(find(iris(:, 5) == class_number),feature_number),'Normal');
end
end
hold all
for feature_number = 1:number_of_features
for class_number=1:number_of_classes
ppd=iris(find(iris(:, 5) == class_number),feature_number);
y=normpdf(ppd,likelihood{class_number}.pd{feature_number}.mu,likelihood{class_number}.pd{feature_number}.sigma);
figure(feature_number)
stem(ppd,y)
end
end
請,如果任何人可以檢查,並告訴什麼在代碼
感謝您的迴應,但所有情節都是相同的顏色..我寫了所有不同的顏色,但如何知道哪些顏色分配給哪個類??? – Bangash 2014-12-06 17:05:57
不客氣。你可以在循環之前寫入「color = ['y','m','c','r'];寫入」stem(ppd,y,color(feature_number))「而不是」stem(ppd ,y)「。 – mehmet 2014-12-06 17:18:10
yesss that worked ..thanks很多.. :) – Bangash 2014-12-06 17:43:30