グラフでの座標の最大​値、最小値を出すには​どうすればいいですか​?

biplotでグラフを出しました。
このグラフにおける成分1, 成分2の最大値, 最小値を出す方法をご教授ください。

 채택된 답변

Hernia Baby
Hernia Baby 2022년 11월 15일
편집: Hernia Baby 2022년 11월 15일

1 개 추천

まずデータを作ります
clear; clc; close all
u1=5*randn(1,10000);
u2=randn(1,10000);
x1=1/2^0.5*u1+1/2^0.5*u2;
x2=1/2^0.5*u1-1/2^0.5*u2;
X=[x1 ; x2]';
pcaを行います
[coef, score] = pca(X);
biplot(coef,'Scores',score);
---------
以降が本題です
ここで注意ですがベクトルの方向によって最大と最小が逆になります
このグラフでと書いていますので正規化して算出しています
Cp1_max_min = [max(score(:,1)),min(score(:,1))]./max(abs(score),[],'all')
Cp1_max_min = 1×2
1.0000 -0.8342
Cp2_max_min = [max(score(:,2)),min(score(:,2))]./max(abs(score),[],'all')
Cp2_max_min = 1×2
0.1822 -0.1752
最大値だけ図示してみましょうか
figure
hold on
biplot(coef,'Scores',score);
[~,idx] = max(score(:,1));
cp1max = score(idx,:);
[~,idx] = max(score(:,2));
cp2max = score(idx,:);
cpmax = [cp1max;cp2max];
scatter(cpmax(:,1)./max(abs(score),[],'all'),cpmax(:,2)./max(abs(score),[],'all'),'k')

댓글 수: 1

R
R 2022년 11월 15일
ありがとうございます。
図示までしてくださってとても分かりやすかったです。

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Networks에 대해 자세히 알아보기

제품

릴리스

R2022b

질문:

R
R
2022년 11월 15일

댓글:

R
R
2022년 11월 15일

Community Treasure Hunt

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

Start Hunting!