Effacer les filtres
Effacer les filtres

【App designer】エラー:'Value' は 'Limits' の範囲内の double のスカラーでなければなりません。 の発生

7 vues (au cours des 30 derniers jours)
RK
RK le 31 Jan 2022
Commenté : RK le 1 Fév 2022
下記手順のアプリを検討しています。
データを読み込み条件に合わせた区間を算出するアプリです。
①ファイルを読み込み
②読み込んだファイルの該当箇所の算出
➂算出結果に対し追加計算
[file,path]=uigetfile('*.csv;*.xlsx;*.xls'); %➀ファイルを読み込み
df = diff(app.data(:, app.Spinner.Value));%➁読み込んだファイルの該当箇所の算出
idx = find(df >= app.Spinner2.Value, inf, 'first') ;
rows = zeros(1, numel(idx));
pos = 1;
for n=1: numel(idx)
checkFlag = find(app.data(idx(n):end, app.Spinner3.Value) >= app.Spinner4.Value, 1, 'first') ;
if ~isempty(checkFlag) && (idx(n) > pos)
rows(1, n) = checkFlag;
pos = idx(n) + checkFlag - 1;
end
end
ans = mean(rows(rows~=0));
app.ans.Value = ans*2.0; %➂算出結果に対し追加計算
上記だと上手くいくのですが、
2行目を下記の通り変更(読み取る行を変更)すると掲題のアラームが発生します。
df = diff(app.data(:, app.Spinner.Value));⇒df = diff(app.data(app.Spinner5.Value, app.Spinner.Value));
対処法などあれば教えていただけますと幸いです。

Réponse acceptée

Akiko
Akiko le 1 Fév 2022
diff 関数への入力がスカラになることで、 df = [] になり、意図せぬ結果になっていることが考えられます。
デバッグ機能を利用して、値の変化などをご確認ください。
参考:MATLAB プログラムのデバッグ
  1 commentaire
RK
RK le 1 Fév 2022
ありがとうございます。
上記、活用いたします。

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur App Designer を使用したアプリ開発 dans Help Center et File Exchange

Produits


Version

R2021a

Community Treasure Hunt

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

Start Hunting!