【问题标题】:How to calculate a triangular interpolation from values in coordinates in Matlab?如何根据 Matlab 中的坐标值计算三角插值?
【发布时间】:2018-08-03 19:40:37
【问题描述】:

如果我有一个矩阵,其中第一列和第二列与坐标相关,第三列与值相关,我如何插入第三列值以创建 iscurve 和颜色条范围?

M=[
342854  657145  309
342996  657287  73
343137  657428  84
342006  657145  1122
342147  657287  777
342289  657428  426
342430  657570  638
342571  657711  200
342713  657852  787
341723  657711  1141
341864  657852  555
342006  657994  1157
342147  658135  355
342289  658277  374
341299  658135  467
341440  658277  672
341582  658418  459
341723  658560  735
341864  658701  781
341016  658701  1233
341157  658842  218
341299  658984  539
341370  659054  1351];

并获得类似附加图像的东西

【问题讨论】:

    标签: matlab interpolation


    【解决方案1】:

    由于您的数据不在统一网格中,您需要使用griddata 进行插值。

    [xq,yq]=meshgrid(linspace(min(M(:,1)),max(M(:,1)),100),linspace(min(M(:,2)),max(M(:,2)),100));
    zq=griddata(M(:,1),M(:,2),M(:,3),xq(:),yq(:),'cubic'); %cubic for smoother results
    [c,h]=contourf(xq,yq,reshape(zq,100,100));
    clabel(c,h);
    

    【讨论】:

    • 非常感谢安德!
    猜你喜欢
    • 2013-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-11
    • 1970-01-01
    • 1970-01-01
    • 2016-01-08
    相关资源
    最近更新 更多