Plot red lines on a contourf plot

15 Ansichten (letzte 30 Tage)
uCiucani
uCiucani am 31 Jul. 2016
Kommentiert: uCiucani am 31 Jul. 2016
Hi everybody, I am trying to create rectangles to identify some areas within a contourf plot. For the moment being, I thought of creating lines between points in the space.
I am not getting the result wanted, I only get 2 lines which I assume are represented because they are just on the rims of the contourf plot. How do I get all of them to be represented in the plot?
I attach the code hereby:
x1=[0.4:2.5:97.9,99.9];
y2=[7.9:-1.5:0.4];
y1=y2';
[X1,Y1] = meshgrid (x1,y1);
%-------
HV_NDTD1=[466, 468, 440, 463, 463, 480, 444, 463, 454, 446, 468, 448, 463, 461, 457, 452, 477, 440, 448, 463, 466, 480, 477, 459, 457, 455, 444, 448, 461, 442, 452, 435, 448, 444, 470, 463, 461, 457, 463, 459, 450;
452, 487, 475, 470, 457, 487, 468, 475, 497, 461, 475, 463, 494, 435, 472, 487, 444, 468, 472, 450, 470, 450, 470, 461, 461, 448, 463, 457, 463, 480, 457, 457, 463, 468, 466, 492, 459, 472, 455, 475, 472;
418, 442, 429, 412, 404, 410, 403, 423, 427, 418, 427, 438, 461, 446, 442, 448, 435, 440, 437, 431, 448, 431, 433, 455, 431, 472, 435, 444, 470, 446, 484, 442, 448, 450, 477, 446, 468, 459, 477, 452, 470;
408, 394, 394, 399, 418, 416, 392, 403, 423, 425, 406, 414, 406, 435, 425, 435, 431, 446, 427, 454, 406, 448, 429, 438, 448, 454, 446, 444, 450, 446, 466, 440, 420, 461, 425, 448, 466, 459, 452, 468, 461;
423, 423, 442, 431, 404, 412, 418, 406, 397, 446, 454, 448, 433, 442, 466, 461, 461, 450, 440, 440, 440, 452, 457, 452, 440, 448, 468, 475, 440, 461, 448, 463, 466, 444, 455, 475, 440, 452, 442, 433, 463;
410, 403, 480, 468, 440, 442, 446, 446, 452, 410, 431, 457, 468, 454, 450, 470, 431, 423, 470, 459, 454, 435, 455, 461, 457, 459, 468, 470, 468, 466, 468, 461, 461, 468, 477, 487, 457, 468, 475, 463, 452;];
%------
xLINE1=[35.3 99.9];
yLINE1=[0.4 0.4];
xLINE2=[35.3 99.9];
yLINE2=[3.3 3.3];
xLINE3=[40.3 99.9];
yLINE3=[5 5];
xLINE4=[40.3 99.9];
yLINE4=[7.9 7.9];
xLINE5=[35.3 35.3];
yLINE5=[0.4 3.3];
xLINE6=[40.3 40.3];
yLINE6=[0.4 3.3];
%---------
figure(3);
plot(xLINE1,yLINE1,'r-','linewidth',6)
hold on;
plot(xLINE2,yLINE2,'r-','linewidth',6)
plot(xLINE3,yLINE3,'r-','linewidth',6)
plot(xLINE4,yLINE4,'r-','linewidth',6)
plot(xLINE5,yLINE5,'r-','linewidth',6)
plot(xLINE6,yLINE6,'r-','linewidth',6)
contourf(X1,Y1,HV_NDTD1)
colormap(parula(32))
colorbar
hold off;
xlabel('Distance (mm)','FontSize',16)
ylabel('Distance (mm)','FontSize',16)
title('W80 Plate ND/TD Bar Hardness Map (facing encapsulated samples)','FontSize',22,'FontWeight','bold')
set(gca,'fontsize',24,'fontweight','bold','linewidth',3);
x1 = [.8,.775];
y1 = [0.965,0.935];
a = annotation('textarrow',x1,y1,'String','Front RD/TD-surface','fontweight','bold');
a.Color = 'red';
a.FontSize = 20;
x1 = [.1,.125];
y1 = [0.85,0.775];
a = annotation('textarrow',x1,y1,'String','Crizzled side','fontweight','bold');
a.Color = 'red';
a.FontSize = 20;

Antworten (1)

Geoff Hayes
Geoff Hayes am 31 Jul. 2016
uCiucani - try drawing the red lines after you have created the contour plot as
contourf(X1,Y1,HV_NDTD1)
hold on;
plot(xLINE1,yLINE1,'r-','linewidth',6)
plot(xLINE2,yLINE2,'r-','linewidth',6)
plot(xLINE3,yLINE3,'r-','linewidth',6)
plot(xLINE4,yLINE4,'r-','linewidth',6)
plot(xLINE5,yLINE5,'r-','linewidth',6)
plot(xLINE6,yLINE6,'r-','linewidth',6)
Or, better, is to use uistack to re-order the visual stacking order of the graphics objects. In this case, you would "put" the contour plot at the bottom of the stack
figure(3);
hold on;
plot(xLINE1,yLINE1,'r-','linewidth',6)
plot(xLINE2,yLINE2,'r-','linewidth',6)
plot(xLINE3,yLINE3,'r-','linewidth',6)
plot(xLINE4,yLINE4,'r-','linewidth',6)
plot(xLINE5,yLINE5,'r-','linewidth',6)
plot(xLINE6,yLINE6,'r-','linewidth',6)
[~, hCP] = contourf(X1,Y1,HV_NDTD1);
uistack(hCP,'bottom');
Try the above and see what happens!
  1 Kommentar
uCiucani
uCiucani am 31 Jul. 2016
It worked, thank you very much Geoff!!

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by