Live functions are program files that contain code and formatted text together in a single interactive environment called the Live Editor. Similar to live scripts, live functions allow you to reuse sequences of commands by storing them in program files. Live functions provide more flexibility, though, primarily because you can pass them input values and receive output values.
To create a live function, go to the Home tab and select New > Live Function.
If you have an existing function, you can open it as a live function in the Live Editor. Opening a function as a live function creates a copy of the file and leaves the original file untouched. MATLAB® converts publishing markup from the original script to formatted content in the new live function.
To open an existing function (
.m) as a live function
.mlx) from the Editor, right-click the document tab and
functionName as Live
Function from the context menu.
Alternatively, go to the Editor tab, click
Save, and select Save As.
Then, set the Save as type: to
Code Files (*.mlx) and click Save.
You must use one of the described conversion methods to convert your
function to a live function. Simply renaming the function with a
.mlx extension does not work and can corrupt the
If you have an existing large live script or function, you can break it into smaller pieces by automatically converting selected areas of code into functions or local functions. This is called code refactoring.
To refactor a selected area of code, select one or more lines of code and on the Live Editor tab, in the Code section, click Refactor. Then, select from the available options. MATLAB creates a function with the selected code and replaces the original code with a call to the newly created function.
After you create the live function, add code to the function and save it. For
example, add this code and save it as a function called
mymean function calculates
the average of the input list and returns the results.
function a = mymean(v,n) a = sum(v)/n; end
To document the function, add formatted help text above the function definition. For example, add a title and some text to describe the functionality. For more information about adding help text to functions, see Add Help for Live Functions.
You can run live functions using several methods, including calling them from the Command Window or calling them from a live script.
To run a live function from the Command Window, enter the name of the function in
the Command Window. For example, use
mymean.mlx to calculate the
mean of 10 sequential numbers from 1 to 10.
ans = 5.5000
You also can call the live function from a live script. For example, create a live
mystats.mlx. Add this code that declares an array,
determines the length of the array, and passes both values to the function
x = 1:10; n = length(x); avg = mymean(x,n); disp(['Average = ', num2str(avg)])
Run the live script. The Live Editor displays the output.
If a live function displays text or returns values, the Live Editor displays the
output in the calling live script, in line with the call to the live function. For
example, add a line to
mymean that displays the calculated mean
before returning the
function a = mymean(v,n) a = sum(v)/n; disp(['a = ', num2str(a)]) end
mystats, the Live Editor displays the output for
mymeanwith the output from
To save a live function as a plain code file (
On the Live Editor tab, in the File section, select Save > Save As....
In the dialog box that appears, select
MATLAB Code files
(UTF-8) (*.m) as the Save as
When saving, MATLAB converts all formatted content to publish markup.