How did they make this Hexagonal Matrix?...

4 次查看(过去 30 天)
Hi, Im trying to figure out how the following figure was generated using MATLAB, in this video.
Specifically, how did they make the hexagonal cell matrix that is being shown here? I am really not sure where to even begin learning about this technique... Thanks!

回答(2 个)

Sean de Wolski
Sean de Wolski 2012-12-3
编辑:Sean de Wolski 2012-12-3
Probably by making lots of little hexagonal patches.
doc patch
For more information.
More because Matt J motivated me to try it, lopsided non-aligned patches!
x1 = [0.5 1 1.5 1 0.5 0];
y1 = [0 0 0.5 1 1 0.5];
n = 10;
xd = bsxfun(@plus,x1,(1:1.5:n*1.5)');
yd = bsxfun(@plus,y1,(1:1.5:n*1.5)');
for ii = 1:n
for jj = 1:n
patch('XData',xd(ii,:),'YData',yd(jj,:),'FaceColor',rand(1,3))
end
end

Matt J
Matt J 2012-12-3
编辑:Matt J 2012-12-3
Building upon Sean's remark, it might look something like this
[x,y]=ndgrid(1:42,1:42);
idx=logical(mod(y,2));
x(idx)=x(idx)+.5;
[v,c] = voronoin([x(:),y(:)]);
clf
for i=1:length(c)
patch('XData',v(c{i},1),'YData',v(c{i},2),...
'EdgeColor','b','FaceColor',[255 182 193]/255)
end

类别

Help CenterFile Exchange 中查找有关 Contour Plots 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by