| Products & Services | Solutions | Academia | Support | User Community | Company |
| Download Product Updates | | | Get Pricing | | | Trial Software |
| Documentation → MATLAB |
| Contents | Index |
| Learn more about MATLAB |
set(H,'PropertyName',PropertyValue,...)
set(H,a)
set(H,pn,pv,...)
set(H,pn,MxN_pv)
a = set(h)
pv = set(h,'PropertyName')
Note Do not use the set function on Java objects as it will cause a memory leak. For more information, see Accessing Private and Public Data |
set(H,'PropertyName',PropertyValue,...) sets the named properties to the specified values on the object(s) identified by H. H can be a vector of handles, in which case set sets the properties' values for all the objects.
set(H,a) sets the named properties to the specified values on the object(s) identified by H. a is a structure array whose field names are the object property names and whose field values are the values of the corresponding properties.
set(H,pn,pv,...) sets the named properties specified in the cell array pn to the corresponding value in the cell array pv for all objects identified in H.
set(H,pn,MxN_pv) sets n property values on each of m graphics objects, where m = length(H) and n is equal to the number of property names contained in the cell array pn. This allows you to set a given group of properties to different values on each object.
a = set(h) returns the user-settable properties and possible values for the object identified by h. a is a structure array whose field names are the object's property names and whose field values are the possible values of the corresponding properties. If you do not specify an output argument, the MATLAB software displays the information on the screen. h must be scalar.
pv = set(h,'PropertyName') returns the possible values for the named property. If the possible values are strings, set returns each in a cell of the cell array pv. For other properties, set returns a statement indicating that PropertyName does not have a fixed set of property values. If you do not specify an output argument, MATLAB displays the information on the screen. h must be scalar.
You can use any combination of property name/property value pairs, structure arrays, and cell arrays in one call to set.
Note that if you are setting both the FontSize and the FontUnits properties in one function call, you must set the FontUnits property first so that the MATLAB software can correctly interpret the specified FontSize. The same applies to figure and axes uints — always set the Units property before setting properties whose values you want to be interpreted in those units. For example,
f = figure('Units','characters',...
'Position',[30 30 120 35]);Set the Color property of the current axes to blue.
axes; set(gca,'Color','b')
Change all the lines in a plot to black.
plot(peaks) set(findobj('Type','line'),'Color','k')
You can define a group of properties in a structure to better organize your code. For example, these statements define a structure called active, which contains a set of property definitions used for the uicontrol objects in a particular figure. When this figure becomes the current figure, MATLAB changes the colors and enables the controls.
active.BackgroundColor = [.7 .7 .7]; active.Enable = 'on'; active.ForegroundColor = [0 0 0]; if gcf == control_fig_handle set(findobj(control_fig_handle,'Type','uicontrol'),active) end
You can use cell arrays to set properties to different values on each object. For example, these statements define a cell array to set three properties,
PropName(1) = {'BackgroundColor'};
PropName(2) = {'Enable'};
PropName(3) = {'ForegroundColor'};These statements define a cell array containing three values for each of three objects (i.e., a 3-by-3 cell array).
PropVal(1,1) = {[.5 .5 .5]};
PropVal(1,2) = {'off'};
PropVal(1,3) = {[.9 .9 .9]};
PropVal(2,1) = {[1 0 0]};
PropVal(2,2) = {'on'};
PropVal(2,3) = {[1 1 1]};
PropVal(3,1) = {[.7 .7 .7]};
PropVal(3,2) = {'on'};
PropVal(3,3) = {[0 0 0]};Now pass the arguments to set,
set(H,PropName,PropVal)
where length(H) = 3 and each element is the handle to a uicontrol.
Suppose you want to set the value of the Tag property on five line objects, each to a different value. Note how the value cell array needs to be transposed to have the proper shape.
h = plot(rand(5));
set(h,{'Tag'},{'line1','line2','line3','line4','line5'}')findobj, gca, gcf, gco, gcbo, get
Graphics Object Identification for related functions
![]() | serialbreak | set (COM) | ![]() |

Includes the most popular MATLAB recorded presentations with Q&A sessions led by MATLAB experts.
| © 1984-2009- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |