contour for scatter data

30 ビュー (過去 30 日間)
Pegah
Pegah 2023 年 2 月 27 日
編集済み: Walter Roberson 2023 年 8 月 1 日
Hi every one,
I have 3 columns of data X, Y, and T. I used "svd" function for T and now I need to visulaize T considering X, and Y. How could I use "contour" or "contourf" for this data? the problem is, I cann't use "meshgrid" function because the grid that I used is not organised.
Thanks in advance,
  1 件のコメント
Totanly
Totanly 2023 年 8 月 1 日
編集済み: Walter Roberson 2023 年 8 月 1 日
see this link, i think it will solve your problem

サインインしてコメントする。

回答 (2 件)

Walter Roberson
Walter Roberson 2023 年 2 月 27 日
編集済み: Walter Roberson 2023 年 2 月 28 日
  6 件のコメント
Voss
Voss 2023 年 3 月 7 日
@Pegah: Include 'EdgeColor','none' in the call to patch():
filename = 'export.csv';
xyzt = readmatrix(filename, 'Range', "7:512");
faceinfo = readmatrix(filename, 'Range', "515:969");
p = patch( ...
'Faces', faceinfo + 1, ...
'Vertices', xyzt(:,1:3), ...
'FaceColor', 'interp', ...
'FaceVertexCData', xyzt(:,4), ...
'EdgeColor', 'none');
view(3)
Pegah
Pegah 2023 年 3 月 7 日
It works, Thank you so much.

サインインしてコメントする。


John D'Errico
John D'Errico 2023 年 2 月 28 日
編集済み: John D'Errico 2023 年 2 月 28 日
Let me give an example of how to use a tricontouring tool for scattered data.
x = rand(100,1);
y = rand(100,1);
zfun = @(x,y) sin(x + y).*cos(x-2*y) - x;
z = zfun(x,y);
% Note the use of an alpha shape to generate the triangulation.
% This is important, as otherwise, there will be significant edge
% artifacts.
S = alphaShape(x,y);
S.Alpha = .3;
plot(S)
That is merely the triangulation. Again, it is based purely on the variables x and y.
trisurf(S.alphaTriangulation,x,y,z)
tricontour(S.alphaTriangulation,x,y,z,10)
hold on
plot(x,y,'ro')
colorbar

カテゴリ

Help Center および File ExchangeContour Plots についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by