Andrews plot function for multivariate control chart limits UCL and LCL
6 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I am working on Andrews plot for quality control chart. So I need to define UCL and LCL for that. I have attached the images of the paper for the reference and better clarity.
Please tell me how can I develop a vector for A(theta) in the attached image. I also need to use this function for the monitoring the out-of-control points at the later stage.
0 Kommentare
Akzeptierte Antwort
Paul
am 1 Jul. 2023
Brute force approach ...
Use symbolic for illustration
syms theta
p = 5;
A = reshape([sin((1:p)*theta) ; cos((1:p)*theta)],1,[])
A = [1/sqrt(sym(2)) A];
A = A(1:p)
Also, you may be interested in andrewsplot
2 Kommentare
Paul
am 2 Jul. 2023
x = 1:6; % an observation
% non-vectorized approach, but easy(?) to follow
syms theta
p = size(x,2);
A = reshape([sin((1:p)*theta) ; cos((1:p)*theta)],1,[]);
A = [1/sqrt(sym(2))+0*theta A];
A = A(1:p)
A = matlabFunction(A)
theta = linspace(-pi,pi,100);
aplot1 = 0*theta;
for ii = 1:numel(aplot1)
aplot1(ii) = sum(x.*A(theta(ii)),2);
end
figure
plot(theta,aplot1)
% non-symbolic, vectorized approach
neven = ceil((p-1)/2);
nodd = floor((p-1)/2);
aplot2 = x(1)/sqrt(2) + sum(x(2:2:end).*sin(theta(:).*(1:neven)),2) + sum(x(3:2:end).*cos(theta(:).*(1:nodd)),2);
figure
plot(theta,aplot2)
norm(aplot1(:)-aplot2(:))
Weitere Antworten (1)
KALYAN ACHARJYA
am 1 Jul. 2023
syms theta
% P variate vector
%Cross check here, just random data, it can be variable
p=10;
data_sin=sin((1:round(p/2)+1)*theta);
data_cos=cos((1:round(p/2))*theta);
data(1:2:2*numel(data_sin))=data_sin;
data(2:2:end)=data_cos;
data=[1/sqrt(2),data]
2 Kommentare
Siehe auch
Kategorien
Mehr zu Line Plots finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!