Effacer les filtres
Effacer les filtres

How do i set the marker and line commands to accept the symbols as inputs

1 vue (au cours des 30 derniers jours)
p.LineStyle = input('Select which line style you would like: ','s');
while p.LineStyle ~= ('''-''' | '''--''' | ''':''' | '''-.''' | '''none''')
p.LineStyle = input('Refer to the PDF document for valid inputs: ');
end
I get the error 'Matrix dimensions must agree'
  1 commentaire
Walter Roberson
Walter Roberson le 2 Nov 2018
Note that if p is a Mathworks graphics object, then setting p.LineStyle to something invalid would error before getting to the while. That is why I store into a different variable and leave the setting of p.LineStyle until after the input has been validated.

Connectez-vous pour commenter.

Réponse acceptée

Star Strider
Star Strider le 2 Nov 2018
Modifié(e) : Star Strider le 2 Nov 2018
See if the strcmpi (link) function will do what you want.
This works for me:
p.LineStyle = input('Select which line style you would like: ','s');
while ~strcmpi(p.LineStyle, {'''-''' , '''--''' , ''':''' , '''-.''' , '''none'''})
p.LineStyle = input('Refer to the PDF document for valid inputs: ');
end

Plus de réponses (3)

Caglar
Caglar le 2 Nov 2018
Modifié(e) : Caglar le 2 Nov 2018
You need to make it
input('Refer to the PDF document for valid inputs: ','s')
Check input help page for the reason of parameter 's'.

Matt J
Matt J le 2 Nov 2018
Modifié(e) : Matt J le 2 Nov 2018
while ~ismember( p.LineStyle ,{'-',':','-.','--','none'})
disp 'Refer to the PDF document for valid inputs:', disp ' ';
p.LineStyle = input('Select which line style you would like: ','s');
end

Walter Roberson
Walter Roberson le 2 Nov 2018
valid_styles = {'-', '--', ':', '-.', 'none'};
while true
LineStyle = input('Select which line style you would like: ','s');
if ismember(LineStyle, valid_styles)
p.LineStyle = LineStyle;
break;
end
fprintf('valid styles are: %s\n', strjoin(valid_styles, ' '));
end

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by