如何删除切片图中的小值?在我的情节中,基本上蓝色太多了,我看不到里面的红点。
或者,稍有不同:
*是否可以用matlab删除切片图中的一些点?
slice(X,Y,Z,V,sx,sy,sz) 表示由 sx,sy 和 sz 定义的整个平面上体积 V 的值。但是我可以选择只保留这些计划中的一些点吗?
我们是否必须在整个计划中表示 V 的值?
我可以让“小价值”透明吗?
编辑 新代码:
h =slice(x,y,z,V,sx,sy,sz);
for n=1:length(h)
set(h(n), 'alphadata',get(h(n),'cdata'), 'facealpha','flat');
end
a = alphamap('rampup',256);
a(a<(threshold)) = 0;
a(a>(threshold)) = 0.07;
alphamap(a);
Run Code Online (Sandbox Code Playgroud)
我试过上面的代码。然而,这是我得到的情节:我认为 cdata(颜色)有问题,但我不知道这是什么......

当我没有真正得到箭头时,有人可以告诉我,我对箭头绘图功能做错了吗,它只是填充了大量蓝色的空白空间.看看下面的图像,然后查看我的代码.
这只是我轮廓的一部分,因为如果我试图把它拉得更大,这就会占用一定的力量.但是我的功能,轮廓和其他一切都有效,它只是我遇到麻烦的箭袋.

interval = -100:100;
[X Y] = meshgrid(interval, interval);
h = figure;
contour(X, Y, Z);
hold on;
[FX,FY] = gradient(-Z);
quiver(X, Y, FX, FY);
hold off;
Run Code Online (Sandbox Code Playgroud)
如果我使矩阵更稀疏,例如使用"interval = linspace(-800,1600,1200);" 结果将如下所示:

编辑:我需要的是像这样的轮廓线,但箭头应该与它们一起流动.现在这些看起来像点,即使我进一步放大.如果我缩小整个窗口将是蓝色.
如果有人想玩它来解决这个问题,那么这是完整的脚本.
m1 = 1;
m2 = 0.4;
r1 = [1167 0 0];
r2 = [-467 0 0];
G = 9.82;
w = sqrt( G*(m1+m2) / norm(r1-r2)^3 );
interval = linspace(-800, 1600, 1200);
% Element-wise 2-norm
ewnorm = @(x,y) ( x.^2 + y.^2 ).^(1/2);
% Element-wise cross squared
ewcross2 …Run Code Online (Sandbox Code Playgroud)