Вы хотите создать PATCH с draw_ball
. Лучший способ сделать это - сохранить данные в виде граней и вершин, но если вы хотите сохранить свои массивы 8xN, вы можете вместо этого создать 8 патчей, описывающих шар.
Таким образом, ваша функция будет выглядеть так:
function pH = drawBall(x,y)
%# count sectors
nSectors = size(x,1);
%# create a colormap
ballColors = jet(nSectors);
%# set hold-state of current axes to 'on'
set(gca,'nextPlot','add')
%# initialize array of plot handles
pH = zeros(nSectors,1);
%# add [0,0] to every sector
x = [x,zeros(nSectors,1)];
y = [y,zeros(nSectors,1)];
%# plot patches
for s = 1:nSectors
%# plot sectors with black lines. If there shouldn't be lines, put 'none' instead of 'k'
pH(s) = patch(x(s,:),y(s,:),ballColors(s,:),'EdgeColor','k');
end