Using strings as an argument of a function

조회 수: 36 (최근 30일)
Fatih Enes Kose
Fatih Enes Kose 2020년 3월 22일
댓글: Fatih Enes Kose 2020년 3월 22일
I want to write a function that takes 3 matrices and 2 strings as an argument. I successfully passed matrices as an argument but i could not do the same thing for strings. Is there anyone who knows how i can use strings as an argument and how should i pass strings on the line that i call the function? I want to use the function several times and i have different names for xlabel and ylabel so i want to use these names as an argument.
function [ ] = plotAmplitudeSpectrum( inp_signal, time_vector, Fsample, xlabel, ylabel )
% Fsample: sampling frequency
L = length(time_vector);
Y = fft(inp_signal);
P2 = abs(Y/L);
P1 = P2(1:L/2+1);
P1(2:end-1) = 2*P1(2:end-1);
f = Fsample*(0:(L/2))/L;
plot(f,P1,'LineWidth',2);
title('Sinyalin Genlik Spektrumu');
xlabel(xlabel);
ylabel(ylabel);
end

채택된 답변

Sriram Tadavarty
Sriram Tadavarty 2020년 3월 22일
편집: Sriram Tadavarty 2020년 3월 22일
Hi,
The issue is with the input names. Change the input names with variable names other than MATLAB inbuilt functions, You can place input to be xlabelstr, ylabelstr and then use them in the function as such:
function [ ] = plotAmplitudeSpectrum( inp_signal, time_vector, Fsample, xlabelstr, ylabelstr )
%...
xlabel(xlabelstr)
ylabel(ylabelstr)
You could directly pass as such:
plotAmplitudeSpectrum( inp_signal, time_vector, Fsample, 'X Label', 'y label' )
% Or even
plotAmplitudeSpectrum( inp_signal, time_vector, Fsample, "X Label", "y label")
Hope this helps.
Regards,
Sriram
  댓글 수: 3
Sriram Tadavarty
Sriram Tadavarty 2020년 3월 22일
Do accept the answer, if helpful.
Fatih Enes Kose
Fatih Enes Kose 2020년 3월 22일
I did, thanks again

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Logical에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by