如何在Matlab中的两个半径内创建圆形补丁?

时间:2015-10-06 03:02:13

标签: matlab interpolation patch

我正在尝试使用常数值的圆环创建极坐标图。我能够创建补丁,但不知道如何约束'两个半径之间区域的彩色值。这是我到目前为止 - 这只是一个示例,不包含任何实际值。我现在正试图弄清楚如何对此进行编码。

以下任意值。 colorbar值设置为0-40,两个patch cdata值设置为28和35。

    numPoints=100; 
    radius=100;      
    theta=linspace(0,2*pi,numPoints);
    rho=ones(1,numPoints)*radius; 
    [X,Y] = pol2cart(theta,rho); 

    radius=20;
    rho=ones(1,numPoints)*radius;
    [X,Y] = pol2cart(theta,rho);
    H=patch(X,Y,1); 
    set(gca,'CLim',[0 40])
    cdata = ones(1,100)*28;
    set(H,'FaceColor','interp',...
    'CData',cdata,...
    'CDataMapping','scaled',...
    'EdgeColor','interp',...
    'LineWidth',5)
     colormap(jet)
     hold on

     radius=10;
     rho=ones(1,numPoints)*radius;
     [X,Y] = pol2cart(theta,rho);
     H=patch(X,Y,1); 
     cdata = ones(1,100)*35;
     set(H,'FaceColor','interp',...
     'CData',cdata,...
     'CDataMapping','scaled',...
     'EdgeColor','interp',...
     'LineWidth',5)

这样做只是用第二个较小的补丁编写第一个补丁。因此,它们之间没有插值。

0 个答案:

没有答案