Set MarkerFaceColor to plot with multiple items.

I wanna fill with color the figure 'o' of my plot, but I know how. My plot is this way:
plot(X1,Y1,LineSpec1,...,Xn,Yn,Linespecn)
And I tried with this:
plot(X1,Y1,'om','MarkerFaceColor','k',...,Xn,Yn,LineSpecn)
But it didn't work.

 Accepted Answer

n = 10;
x1 =(1:n)';
y1 = rand(10, 1);
x2 = (1:n);
y2 = rand(10,1);
% Use separate plot when you need to specify additional properties
plot(x1, y1, 'om-', 'MarkerFaceColor','k');
hold on
plot(x2, y2, 'ob:', 'MarkerFaceColor','r');

5 Comments

If I want to use the automatic color sequencing that plot provides, I cannot use an explicit color for MarkerFaceColor. How do I get the face to fill with the automatically cycled color?
Assign the line color (in defaut color order) to MarkerFaceColor
n = 10;
x1 =(1:n)';
y1 = rand(10, 1);
x2 = (1:n);
y2 = rand(10,1);
% Use separate plot when you need to specify additional properties
p = plot(x1, y1, 'o-');
p.MarkerFaceColor = p.Color;
hold on
p1= plot(x2, y2, 'o:');
p1.MarkerFaceColor = p1.Color;
sorry this does not work for y data in a matrix because all curves are plotted with a single command. Is there no simple way to have filled markers (such as in scatter plot)?
Consider the example:
x =(0:10)';
y = rand(11,3); % multiple series in one matrix
p = plot(x, y, 'o-');
[p.MarkerFaceColor] = deal(p.Color);

Sign in to comment.

More Answers (0)

Categories

Find more on Graphics Performance in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!