The Language of Technical Computing
This example shows how to create a structure array. A structure is a data type that groups related data using data containers called fields. Each field can contain data of any type or size.
Store a patient record in a scalar structure with fields name, billing, and test.
patient.name = 'John Doe'; patient.billing = 127.00; patient.test = [79, 75, 73; 180, 178, 177.5; 220, 210, 205]; patient
patient = name: 'John Doe' billing: 127 test: [3x3 double]
Add records for other patients to the array by including subscripts after the array name.
patient(2).name = 'Ann Lane'; patient(2).billing = 28.50; patient(2).test = [68, 70, 68; 118, 118, 119; 172, 170, 169]; patient
patient = 1x2 struct array with fields: name billing test
Each patient record in the array is a structure of class struct. An array of structures is often referred to as a struct array. Like other MATLAB arrays, a struct array can have any dimensions.
A struct array has the following properties:
All structs in the array have the same number of fields.
All structs have the same field names.
Fields of the same name in different structs can contain different types or sizes of data.
Any unspecified fields for new structs in the array contain empty arrays.
patient(3).name = 'New Name'; patient(3)
ans = name: 'New Name' billing:  test: 
Access data in the structure array to find how much the first patient owes, and to create a bar graph of his test results.
amount_due = patient(1).billing bar(patient(1).test) title(['Test Results for ', patient(1).name])
amount_due = 127