Contour Edge of Plot Issue

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

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.
I am referring to the fact that the contour on the lowest contour does not end at the edge of the plot. Here is another image where 2 contour lines can be seen with the same issue when they hit the left edge of the plot:

Sign in to comment.

Answers (1)

[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));

Categories

Asked:

on 8 Jun 2020

Answered:

on 10 Jun 2020

Community Treasure Hunt

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

Start Hunting!