Adding scatter points to a contour plot
조회 수: 23(최근 30일)
표시 이전 댓글
Hussein Kokash 2023년 2월 3일
답변: Star Strider 2023년 2월 3일
I have the following plot code:
% Plot the RMS velocity contour
contourf(X, Y, rms_velocity_U);
title(sprintf('RMS Velocity Contour at t=%f', time(i)));
This plot plots the rms velocity values in a plane x,y.
X, Y, and rms_velocity_U are 67*67 matrices.
At each x position, I want to find the highest "rms_velocity_U" value, in total would be 67 values and I want to add them to the plot below as a scatter points.
Any way to calculate the value and position of these point and add them to the plot?
Star Strider 2023년 2월 3일
‘Highest’ usually implies one value, not 67, and without your data (the (67x67) matrix) and understanding what the ‘highest 67 values’ means, plotting them is not possible.
That aside, marking the highest 5 values in a contourf plot is straightforward —
[X,Y,Z] = peaks(50);
[Zmax,idx] = maxk(Z(:),5)
contourf(X, Y, Z, 20)
plot(X(idx), Y(idx), 'pg', 'MarkerSize',10, 'MarkerFaceColor','g')
See the documentation on maxk (introduced in R2017b) for details.
Use a similar approach with your data.
Find more on Scatter Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!