How to zero the data points behind the line of figure?
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I have a figure of plot3 and I would like to making the data contacting the blue line to zero.
How to zero the data points behind (contacting) the line..
clear all;clc;close all;
data = ones(100,200);
x = (0:1:size(data,2)-1)*0.1;
y =(0:1:size(data,1)-1)*0.1;
surf(x,y,data*100); hold on;
grid off;
colorbar;
view([0 90])
shading interp;
set(gca,'xlim',[min(x)-2 max(x)+2],'ylim',[min(y)-2 max(y)+2])
x = [2.4;13.9];
y = [-0.5;9.8];
plot3(x,y,1000*ones(length(x),length(y)),'b','LineWidth',10)
0 Kommentare
Akzeptierte Antwort
KSSV
am 28 Jan. 2021
Bearbeitet: KSSV
am 28 Jan. 2021
data = ones(100,200);
x = (0:1:size(data,2)-1)*0.1;
y =(0:1:size(data,1)-1)*0.1;
x1 = [2.4;13.9];
y1 = [-0.5;9.8];
p = polyfit(x1,y1,1) ;
x2 = x ;
y2 = polyval(p,x2) ;
[X,Y] = meshgrid(x,y) ;
idx = knnsearch([X(:) Y(:)],[x2' y2']) ;
data(idx) = 0 ;
surf(x,y,data*100); hold on;
grid off;
colorbar;
view([0 90])
shading interp;
set(gca,'xlim',[min(x)-2 max(x)+2],'ylim',[min(y)-2 max(y)+2])
% plot3(x1,y1,1000*ones(length(x1),length(y1)),'b','LineWidth',10)
2 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Line Plots finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!