# gradient of bubble colors in a bubble chart

19 views (last 30 days)
SA-W on 14 Mar 2023
Commented: SA-W on 14 Mar 2023
I want to create a bubblechart with three different bubble colors.
One group of bubbles is red, the second group is blue, and the color of the third group should be a mixture of red and blue. For instance, the left half of the bubble (circle) is red and the right half is blue. Or even better, a continuous trend from left to right.
Is there a way to do this?

Cameron on 14 Mar 2023
I'm not sure what you mean by "continuous trend from left to right". Can you post an image of what you're looking for? This was what I thought you meant.
x = 1:30;
y = rand(1,length(x));
sz = rand(1,length(x));
m = length(sz);
if (mod(m,2) == 0)
% From [0 0 1] to [1 1 1], then [1 1 1] to [1 0 0];
m1 = m*0.5;
r = (0:m1-1)'/max(m1-1,1);
g = r;
r = [r; ones(m1,1)];
g = [g; flipud(g)];
b = flipud(r);
else
% From [0 0 1] to [1 1 1] to [1 0 0];
m1 = floor(m*0.5);
r = (0:m1-1)'/max(m1,1);
g = r;
r = [r; ones(m1+1,1)];
g = [g; 1; flipud(g)];
b = flipud(r);
end
c = [r g b];
t = tiledlayout(1,1);
nexttile
b = bubblechart(x,y,sz,c,'MarkerEdgeColor','k');
colormap(c)
colorbar
blgd = bubblelegend('Population');
lgd = legend('My data');
blgd.Layout.Tile = 'east';
lgd.Layout.Tile = 'east'; ##### 2 CommentsShow 1 older commentHide 1 older comment
SA-W on 14 Mar 2023
Is it clear what I would like to have?