The shape of "filled" scatter points aren't necessarily changing to a square, although at some marker sizes it does appear to be a square. Change the SizeData property and you'll see that "filled" markers change shape. The marker size for scatter points specify the marker area in points squared which may partially explain the lack of consistency in shape. Monitor resolution may also factor in.
The reason the markers may appear less rigid when MarkerFaceColor is applied is because the marker edges are also applied and they smooth out the rigidity.
This demo below compare 5 scatter point sizes across the three conditions. You'll notice that the "filled" and the "MarkerFaceColor without edges" appear the same.
clf()
hold on
markerSizes = 20:20:100;
scatter(1:5, ones(1,5)+2, markerSizes, 'b', 'filled')
scatter(1:5, ones(1,5)+1, markerSizes, 'MarkerFaceColor', 'b')
scatter(1:5, ones(1,5)+0, markerSizes, 'MarkerFaceColor', 'b','MarkerEdgeColor', 'none')
xlim([-4, 10])
ylim([-4,8])
labelpoints(1:5, ones(1,5)+2, markerSizes, 'N', 0.1)
labelpoints(1, [3,2,1], {'filled','MarkerFaceColor', 'MarkerfaceColor w/o edges'}, 'W', 0.2)
Best Answer