How to write a function that returns a graph?

If I write a function like
function A = myplot(x,y)
A = plot(x,y);
set(Aetc....)
end
When I call this function, a lot of numbers instead of a plot are shown. If modify the code as follows,
function A = myplot(x,y)
plot(x,y)
end
then an error occurs as output argument "A" is not assigned during the call to the function.
How may I correct this?

 채택된 답변

Dishant Arora
Dishant Arora 2014년 2월 20일

1 개 추천

your 2nd syntex shouldn't give any error, you need to not specify output argument while calling the function from command prompt:
a = myplot(x,y) % will result in error as a isn't defined
myplot(x,y) % will give you desired result
Moreover you also don't need to have any output arguments while defining the function:
function myplot(x,y)
%function body
end

댓글 수: 1

On my project i wrote code and it works fine but i want to add a function to plot so ı'm trying to call my plot funciton without defining any output arguements. How can ı call it? I'm newbie, i basical expressions.
This is the function ı'm trying to call:
Main_path = "C:\Users\emird\AppData\Local\Programs\MatLab"
function plotter(files, Main_path)
Exceldir = Main_path + "\ExcelFiles";
cd(Exceldir); % Change current directory
for i=1:length(files)
% Get sheet names being in the excel file.
sheets = sheetnames(files(i).name); % Sheets array.
% Get whole datas inside the excel files month by month.
for j=1:length(sheets)
data = readtable(files(i).name, "Sheet", sheets(j));
days = 1:1:size(data.Date); % Days array.
hold on;
plot(data.number_sold, days, "b.", "LineWidth", 2) % xAxis = sold_number
% yAxis = days
end
end
hold off;
end

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

추가 답변 (2개)

Wayne King
Wayne King 2014년 2월 20일

2 개 추천

You can simply not have an output argument
function myplot(x,y)
plot(x,y)
end
That's one way
Walter Roberson
Walter Roberson 2014년 2월 21일

2 개 추천

Remember, the return value from a plot() call is a handle graphics handle (or vector of them.) The actual plot resides in graphics memory.

카테고리

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

질문:

2014년 2월 20일

댓글:

2023년 2월 27일

Community Treasure Hunt

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

Start Hunting!

Translated by