<< saveas Graphics functions scatter3 >>

scatter


Scatter plot.


Syntax


scatter(x, y)
scatter(x, y, sz)
scatter(x, y, sz, c)
scatter(..., 'filled')
scatter(..., marker)
scatter(ax, ...)
scatter(..., propertyName, propertyValue)
s = scatter(...)

Input argument


X

x-coordinates: vector or matrix.

Y

y-coordinates: vector or matrix.

sz

Marker size: numeric scalar, vector, [] (default: 36)

c

Marker color: short color name, color name, RGB triplet or vector of colormap indices

ax

a scalar graphics object value: parent container, specified as a axes.

propertyName

a scalar string or row vector character. see help of 'line' for property list.

propertyValue

a value.

Output argument


s

a graphics object: scatter type or array of scatter.

Description


scatter(x, y) generates a scatter plot by placing circular markers at the coordinates defined by the vectors x and y.

If you intend to display a single dataset, ensure that both x and y are vectors of the same length.

To visualize multiple datasets on a shared set of axes, you can achieve this by using a matrix for either x or y, while keeping the other as a vector.

This allows you to overlay or compare multiple datasets within the same plot.

Scatter Properties:

Scatter Properties:

AlphaData: Marker face transparency, 1 (default) or array the same size as XData

BeingDeleted: Flag indicating that the object is being deleted.

BusyAction: Callback queuing specified as 'queue' (default) or 'cancel'. The property determines how Nelson handles the execution of interrupting callbacks.

CData Marker colors: [] (default), RGB triplet, matrix of RGB triplets or vector.

marker color to use for each data series:

'k', 'black': Color Black

'y', 'yellow': Color Yellow

'm', 'magenta': Color Magenta

'c', 'cyan': Color Cyan

'r', 'red': Color Red

'b', 'blue': Color Blue

'g', 'green': Color Green

CDataMode Selection mode for CData: 'manual', 'auto' (default).

Children: Children.

CreateFcn: Component creation function.

DeleteFcn: Component deletion function.

DisplayName Legend label: character vector or string scalar, '' (default).

Interruptible: Callback interruption 'on' (default).

LineWidth Line width: scalar positive value.

MarkerMarker symbol:

marker specifies the symbol to be drawn at each data point:

'o': Circle symbol

'x': Times symbol

'+': Plus symbol

'*': Asterisk symbol

'.': Dot symbol

's': Square symbol

'd': Diamond symbol

'v': Downward-pointing triangle symbol

'^': Upward-pointing triangle symbol

'>': Left-pointing triangle symbol

'<': Right-pointing triangle symbol

MarkerEdgeColor Marker outline color: RGB triplet.

MarkerEdgeAlpha Marker edge transparency: scalar in range [0,1], 'flat or 1 (default).

To assign distinct transparency values to the edges of each point in a plot, set the AlphaData property to a vector matching the size of the XData property and set the MarkerEdgeAlpha property to 'flat'.

MarkerFaceColor Marker fill color: RGB triplet.

MarkerFaceAlpha Marker face transparency: scalar in range [0,1], 'flat or 1 (default).

To assign distinct transparency values to the faces of each point in a plot, set the AlphaData property to a vector matching the size of the XData property and set the MarkerFaceAlpha property to 'flat'.

Parent Parent container: Figure graphics object.

SizeData: Marker sizes:[] (default), scalar or vector.

Tag Object identifier: character vector, string scalar or '' (default).

Type: Type of graphics object 'scatter'.

UserData User data: array or []

Visible State of visibility: 'on' (default) or 'off'.

XData: x values: vector or matrix or [] (default).

YData: y values: vector or matrix or [] (default).

ZData: z values: vector or matrix or [] (default).

XDataMode Selection mode for XData: 'manual' or 'auto'.

Examples


f = figure();
theta = linspace(0,1,600);
x = exp(theta).*sin(110*theta);
y = exp(theta).*cos(110*theta);
s = scatter(x,y ,'filled');

f = figure();
x = linspace(0,3*pi,255);
y = cos(x) + rand(1,255);
sz = 1:255;
c = 1:length(x);
scatter(x, y, sz, c, 'd', 'filled')

f = figure();
x = linspace(0, 3*pi, 255);
y = cos(x) + rand(1, 255);
c = linspace(1,10,length(x));
scatter(x, y, [], c, 'filled')

f = figure();
theta = linspace(0,2*pi,244);
x = sin(theta) + 0.75*rand(1,244);
y = cos(theta) + 0.75*rand(1,244);  
sz = 45;
scatter(x,y,sz,'MarkerEdgeColor',[0 .6 .5], 'MarkerFaceColor',[0 .6 .7],  'LineWidth',3.5)

f = figure(),
x = linspace(0,3*pi,200);
y = cos(x) + rand(1,200);
% Top plot
ax1 = subplot(2,1, 1);
scatter(ax1,x,y)
% Bottom plot
ax2 = subplot(2,1, 2);
scatter(ax2,x,y,'filled','d')

f = figure();
x = rand(500,5);
y = randn(500,5) + (5:5:25);
s = scatter(x,y, 'filled');

f = figure();
% Create figure
hold on;
% Settings
nPoints = 10; % Number of points per marker type
markers = {'o', '+', '*', 's', 'd', '^', 'v', '>', '<', 'p', 'h'};
sizesMin = 20; % Minimum size
sizesMax = 100; % Maximum size
% X positions
x = linspace(1, 10, nPoints);
% Fixed color
fixedColor = [0 0 0]; % black
% Plot each marker type
for m = 1:numel(markers)
    y = m * ones(size(x)); % Constant Y for each marker type
    sizes = linspace(sizesMin, sizesMax, nPoints); % Increasing sizes
    % Scatter points
    scatter(x, y, sizes, ...
        'Marker', markers{m}, ...
        'MarkerEdgeColor', fixedColor, ...
        'MarkerFaceColor', 'none', ...
        'LineWidth', 1.5);
end
title('Scatter Only - One Line per Marker Type with Increasing Size');
xlabel('X Axis');
ylabel('Marker Type Line');
ylim([0 numel(markers)+1]);
hold off;

See also


line, plot, scatter3.

History


Version Description
1.0.0 initial version
1.12.0 color name and short color name managed.
1.14.0 Scatter is a graphics object with Properties.

Author


Allan CORNET

<< saveas Graphics functions scatter3 >>