How do you produce an empty plot if value is higher or lower than given user input value?

조회 수: 1 (최근 30일)
The .mat file has data for years, names, yearReconstruct
clear;
close all;
% Part 1
userInput=input("Please choose between the following numbers: 1 or 2");
% Part 2
circuit("power.mat",userInput);
% Part 3 to 5 - function implementation for bridges & branches
function circuit(power,userInput)
power=load(power);
figure();
if userInput==1
y=power.years;
custom = 'v r';
z='Year';
else
if userInput == 2
y = power.yearReconstruct;
y(power.yearReconstruct==0)= NaN;
custom = '* b';
z='Reconstruction Year';
else
y=[];
custom=[];
disp("Invalid input value, input must be either 1 or 2");
end
end
end
hold on
x=power.names;
plot(y,custom,'Markersize',10,'lineWidth',2);
xlabel('voltage');
ylabel(z);
grid on
set(gca,'xticklabel',x.')
xtickangle(-45);
end
I keep getting an error and it still gives me part of a plot.

답변 (1개)

Walter Roberson
Walter Roberson 2021년 2월 28일
y=nan;
custom=nan;
If you want to produce an empty plot for that case. Your current code will not produce any plot for that case.

카테고리

Help CenterFile Exchange에서 Feature Detection and Extraction에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by