Kahibaro
Discord Login Register

Adding Equations, Images, and Outputs

Working with Rich Content in Live Scripts

MATLAB live scripts let you mix executable code, formatted text, equations, images, and outputs in a single document. This chapter focuses on adding equations, images, and controlling how outputs appear, all inside a live script.

Adding Equations with LaTeX

In a live script, you can write mathematical equations directly in text using LaTeX syntax. You do this in text regions, not code regions.

To insert a text region, place the cursor where you want it, then switch the line or section to text using the live editor toolbar. Once you are in a text area, you can insert an equation.

For inline equations that appear inside a sentence, surround LaTeX code with single dollar signs. For example, in a text region write:

The quadratic formula is $x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}$.

In the rendered live script, this displays as standard mathematical notation.

For display equations that appear centered on their own line, use double dollar signs. For example, in text:

$$\int_0^1 x^2 \, dx = \frac{1}{3}$$

This displays the integral neatly as a separate line.

MATLAB live scripts understand a large subset of LaTeX math syntax. You can use exponents such as $x^2$, subscripts such as $a_1, a_2, \dots, a_n$, fractions with \frac{numerator}{denominator}, square roots with \sqrt{ }, and Greek letters such as \alpha, \beta, or \lambda. You can also write matrices, for example:

$$A = \begin{bmatrix} 1 & 2 \\ 3 & 4 \end{bmatrix}$$

The live editor previews equations immediately, so you can adjust your LaTeX until it looks correct. If an equation does not render, check for missing closing dollar signs, unbalanced braces, or unsupported LaTeX commands.

You can mix formatted text and equations to create self-contained explanations next to code. For instance, you may describe an algorithm in words, present the mathematical formula in LaTeX, and then follow with the MATLAB code that implements it.

Inserting and Displaying Images

You can include images in live scripts to illustrate concepts, show external figures, or display logos and diagrams.

There are two main ways to bring images into a live script. The first is to insert an image as part of the document’s text. In a text region, you can use the toolbar to insert an image from a file. This image becomes embedded in the live script and appears where you place it in the text flow. You can usually resize it by dragging its corners and align it with the surrounding text.

The second method is to generate images programmatically inside code sections. For example, if you read an image from a file and display it with a plotting function, the resulting figure appears directly below that code when you run the section. A typical pattern is:

img = imread('peppers.png');
imshow(img);

In a live script, the image shown by imshow is captured as an inline output in the document. This is different from the classic figure window, because the result is attached to the code section and saved in the live script.

You can combine both approaches. For example, you may include a static diagram as an inserted image in a text region, and next to it show a MATLAB generated visualization produced by code. This is useful for teaching, reports, or interactive documents where you want both explanations and computed graphics in one place.

MATLAB live scripts also let you update images when you rerun code. If your script loads different image files depending on parameters, the displayed output will change accordingly, while the textual content and any manually inserted images stay the same until you edit them.

Controlling Code Outputs in Live Scripts

Live scripts automatically capture and display outputs from code sections, including numeric results, tables, and plots. For beginners this is very helpful, but it is also important to learn how to control which outputs appear.

Numeric and textual outputs behave similarly to the command window. Any expression you enter at the end of a line without a semicolon shows its result. For example, in a live script code section:

x = 1:5;
x

The variable x is displayed as an output under that code section. If you do not want that intermediate result to appear, end the line with a semicolon:

x = 1:5;

The assignment still happens, but no output is shown in the live script. You can selectively show only important results by omitting the semicolon on certain lines, for example:

x = 0:0.1:2*pi;
y = sin(x);
max_y = max(y);
max_y

Here, the intermediate arrays x and y remain hidden, and only the scalar max_y appears.

Some functions print textual information directly, such as disp or fprintf. In a live script, these messages appear as text output below the code, which can be useful for labeling results. For instance:

r = rand(1,3);
disp('Random row vector:');
disp(r);

The printed lines are part of the stored output and will update when you rerun the section.

Graphical outputs such as plots or images appear automatically when you call plotting or display functions. You can generate multiple outputs from a single code section, for example a numeric result and several figures, and they will all be stacked underneath the code region in the order they are created.

Sometimes you may want to hide all outputs from a section while keeping the computations. One approach is to end all lines with semicolons and avoid any explicit display functions. Another is to split your script into multiple sections, so that only the section that summarizes or visualizes the final result produces visible outputs, while earlier sections purely prepare the data.

Combining Explanations, Equations, Images, and Outputs

The real strength of live scripts comes from integrating text, equations, images, and code outputs into a single flow. A common pattern is to start with a text section describing a problem in words, followed by an equation that expresses the mathematics, then code that implements the method, and finally the resulting output or plot.

For example, you might write a short description of a damped oscillator, include the differential equation in LaTeX, insert an image illustrating the physical system, and then add a code section that simulates and plots the motion. Each part sits in the same document, so someone reading it can see the reasoning, the mathematics, and the computed behavior together.

You can also alternate explanation and computation. For instance, after a plot output, you may insert a text region that interprets the graph, perhaps adding another equation to explain a feature in the data, then continue with further code that refines the analysis.

By using text styling, equations with LaTeX, embedded images, and carefully chosen code outputs, you can turn a live script into a readable and reproducible report that is easier to understand than raw code alone.

Key points to remember:
Write equations only in text regions, using $...$ for inline math and $$...$$ for display equations.
Use LaTeX syntax for mathematical symbols, fractions, roots, and matrices.
Insert images either directly into text regions or generate them with code so they appear as outputs.
Control numeric and textual outputs with semicolons and display functions to show only what is important.
Combine explanations, equations, images, and outputs to create clear, self-contained live scripts.

Views: 3

Comments

Please login to add a comment.

Don't have an account? Register now!