Ik heb in Matlab een dataset verkregen bestaande uit X, Y en Z coördinaten. De X en Y datapunten vormen het domein, en Z de bijbehorende functiewaarden.
Dit is de dataset: Als ik een plot maak in Matlab aan de hand van de volgende code:
Code: Selecteer alles
[qx,qy] = meshgrid(linspace(min(X),max(X),100),linspace(min(Y),max(Y),100);
F = TriScatteredInterp(X,Y,Z);
qz = F(qx,qy);
surf(qx,qy,qz,'EdgeColor','none')
camlight left
Deze plot ziet er prima uit.
Echter, het feitelijke domein van de functie is een driehoek, met hoekpunten:
Code: Selecteer alles
X Y
0.0000 0.7853
-0.5236 -0.1745
0.5236 -0.1745
Ik heb daarom alle datapunten gefilterd, met als resultaat dat alleen de X,Y data (inclusief bijbehorende Z waarde) overblijft die binnen dit domein ligt.
Het resultaat is de volgende dataset: Als ik nu deze dataset plot op een zelfde manier, is dit het resultaat:
Nu is het probleem dat deze plot er erg onzuiver uitziet aan de twee randen van het domein. Graag wil ik dat de grafiek er op de randen ook goed uit komt te zien.
Ik kan overigens nieuwe X, Y, Z data aanmaken, mocht dit nodig zijn...
Iemand een idee?
Alvast bedankt!