4
我遵循示例here使用gnuplot生成填充等高線圖。的gnuplot的命令和輸出是:等高線之間的顏色不變的填充輪廓圖
reset
f(x,y)=sin(1.3*x)*cos(.9*y)+cos(.8*x)*sin(1.9*y)+cos(y*.2*x)
set xrange [-5:5]
set yrange [-5:5]
set isosample 250, 250
set table 'test.dat'
splot f(x,y)
unset table
set contour base
set cntrparam level incremental -3, 0.5, 3
unset surface
set table 'cont.dat'
splot f(x,y)
unset table
reset
set xrange [-5:5]
set yrange [-5:5]
unset key
set palette rgbformulae 33,13,10
p 'test.dat' with image, 'cont.dat' w l lt -1 lw 1.5
此方法生成非常平滑的填充等高線圖。如何修改此方法以使輪廓線之間的顏色保持不變?例如,我想爲它類似於此MATLAB腳本的輸出:
clc; clear all; close all;
Nx = 250;
Ny = 250;
x = linspace(-5,5,Nx);
y = linspace(-5,5,Ny);
[X,Y] = meshgrid(x,y);
f = sin(1.3*X).*cos(.9*Y) + cos(.8*X).*sin(1.9*Y) + cos(Y.*.2.*X);
levels = -3:0.5:3;
figure;
contourf(X,Y,f,levels);
colorbar;
好的解決方案!您只需要增加表面的採樣數量,因爲填充後的輪廓不會被視爲封閉的多邊形,而是被拼接在一起。 – Christoph
@Christoph是的,但你也有這個問題沒有默認的maxcolors設置,雖然不太明顯。 – Bernhard