Contour Edge of Plot Issue
4 views (last 30 days)
Show older comments
I am attempting to plot temperature at different locations in an x-z crosssection. For some reason the contour plot seems to have issues handling the edge of the plot where the contour lines end. Here is a picture of what it looks like (the issue can be seen on the left edge of the plot):

The issue becomes worse as the plot is restricted in size and more contours hit the left edge. I've also attached the code that I am running.
2 Comments
Walter Roberson
on 8 Jun 2020
Are you referring to the fact that the lines appear to touch? That can happen with sufficiently steep gradient with plots that are not zoomed in sufficiently far.
Answers (1)
Walter Roberson
on 10 Jun 2020
[W,Z] = meshgrid(WD,ZD);
Your WD and ZD each have duplicates inside them. Your resulting W and Z have duplicates. You griddata() at those places, so you get duplicate outputs.
You should be doing something like
N = 500;
minWD = min(WD); maxWD = max(WD);
minZD = min(ZD); maxZD = max(ZD);
WD_vec = linspace(minWD, maxWD, N);
ZD_vec = linspace(minZD, maxZD, N);
[W, Z] = meshgrid(WD_vec, ZD_vec);
Or if you prefer compactness
[W, Z] = meshgrid( linspace(min(WD), max(WD), N), linspace(min(ZD), max(ZD), N));
0 Comments
See Also
Categories
Find more on Contour 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!