Main Content

plot

Plot data with optional grouping

Description

plot(rm) plots the measurements in the repeated measures model rm for each subject as a function of time. If there is a single numeric within-subjects factor, plot uses the values of that factor as the time values. Otherwise, plot uses the discrete values 1 through r as the time values, where r is the number of repeated measurements.

example

plot(rm,Name,Value) specifies additional options using one or more name-value arguments. For example, you can specify the factors to group by or change the line colors.

example

plot(ax,___) plots into the axes specified by ax instead of the current axes (gca) using any of the input argument combinations in the previous syntaxes. (since R2024a)

H = plot(___) returns handles H to the plotted lines.

Examples

collapse all

Load the sample data.

load fisheriris

The column vector species consists of iris flowers of three different species: setosa, versicolor, and virginica. The double matrix meas consists of four types of measurements on the flowers: the length and width of sepals and petals in centimeters, respectively.

Store the data in a table array.

t = table(species,meas(:,1),meas(:,2),meas(:,3),meas(:,4),...
'VariableNames',{'species','meas1','meas2','meas3','meas4'});
Meas = dataset([1 2 3 4]','VarNames',{'Measurements'});

Fit a repeated measures model, where the measurements are the responses and the species is the predictor variable.

rm = fitrm(t,'meas1-meas4~species','WithinDesign',Meas);

Plot data grouped by the factor species.

plot(rm,'group','species')

Figure contains an axes object. The axes object contains 150 objects of type line. These objects represent species=setosa, species=versicolor, species=virginica.

Change the line style for each group.

plot(rm,'group','species','LineStyle',{'-','--',':'})

Figure contains an axes object. The axes object contains 150 objects of type line. These objects represent species=setosa, species=versicolor, species=virginica.

Load the sample data.

load repeatedmeas

The table between includes the between-subject variables age, IQ, group, gender, and eight repeated measures y1 through y8 as responses. The table within includes the within-subject variables w1 and w2. This is simulated data.

Fit a repeated measures model, where the repeated measures y1 through y8 are the responses, and age, IQ, group, gender, and the group-gender interaction are the predictor variables. Also specify the within-subject design matrix.

rm = fitrm(between,'y1-y8 ~ Group*Gender + Age + IQ','WithinDesign',within);

Plot data with Group coded by color and Gender coded by line type.

plot(rm,'group',{'Group' 'Gender'},'Color','rrbbgg',...
              'LineStyle',{'-' ':' '-' ':' '-' ':'},'Marker','.')

Figure contains an axes object. The axes object contains 30 objects of type line. These objects represent Group=A, Gender=Female, Group=A, Gender=Male, Group=B, Gender=Female, Group=B, Gender=Male, Group=C, Gender=Female, Group=C, Gender=Male.

Input Arguments

collapse all

Repeated measures model, returned as a RepeatedMeasuresModel object.

For properties and methods of this object, see RepeatedMeasuresModel.

Since R2024a

Target axes, specified as an Axes object. If you do not specify the axes, then plot uses the current axes (gca).

Name-Value Arguments

Specify optional pairs of arguments as Name1=Value1,...,NameN=ValueN, where Name is the argument name and Value is the corresponding value. Name-value arguments must appear after other arguments, but the order of the pairs does not matter.

Before R2021a, use commas to separate each name and value, and enclose Name in quotes.

Example: plot(rm,'Marker',{'o','o','x','x'})

Name of between-subject factor or factors, specified as the comma-separated pair consisting of 'Group' and a character vector, string array, or cell array of character vectors. This name-value pair argument groups the lines according to the factor values.

For example, if you have two between-subject factors, drug and sex, and you want to group the lines in the plot according to them, you can specify these factors as follows.

Example: 'Group',{'Drug','Sex'}

Data Types: char | string | cell

Marker to use for each group, specified as the comma-separated pair consisting of 'Marker' and a string array or cell array of character vectors.

For example, if you have two between-subject factors, drug and sex, with each having two groups, you can specify o as the marker for the groups of drug and x as the marker for the groups of sex as follows.

Example: 'Marker',{'o','o','x','x'}

Data Types: string | cell

Color for each group, specified as the comma-separated pair consisting of 'Color' and a character vector, string array, cell array of character vectors, or rows of a three-column RGB matrix.

For example, if you have two between-subject factors, drug and sex, with each having two groups, you can specify red as the color for the groups of drug and blue as the color for the groups of sex as follows.

Example: 'Color','rrbb'

Data Types: single | double | char | string | cell

Line style for each group, specified as the comma-separated pair consisting of 'LineStyle' and a string array or cell array of character vectors.

For example, if you have two between-subject factors, drug and sex, with each having two groups, you can specify - as the line style of one group and : as the line style for the other group as follows.

Example: 'LineStyle',{'-' ':' '-' ':'}

Data Types: string | cell

Output Arguments

collapse all

Handle to plotted lines, returned as a handle.

Version History

Introduced in R2014a

expand all