Как сделать вертикальные линии в плоскостях zx и z и gnuplot
Мне нужна небольшая помощь. Я делаю три поверхности вместе в gnuplot, но мне нужно разместить вертикальные и горизонтальные сетки для оси Z на обратной стороне поверхностей. Я только смог сделать горизонтальные линии, и я хочу добавить вертикальные линии, некоторые предложения, чтобы сделать это в моем коде
Большое спасибо.
set key outside
set rmargin at screen 0.6
set lmargin at screen 0.18
set title 'Gnuplot surfaces'
set key
set pm3d depthorder hidden3d 1
set hidden3d offset 0
set xlabel "X"
set xrange [ -4.0000 : 4.0000 ] noreverse nowriteback
set mxtics 4
set ylabel 'Y'
set yrange [ -4.0000 : 4.0000 ] noreverse nowriteback
set mytics 4
set zlabel "Z"
set zrange [-1.000: 1.000] noreverse nowriteback
set mztics 4
set surface
set isosamples 25
unset colorbox
set ticslevel 0
set grid ztics xtics ytics lt 2 lc rgb "black"
set border 4095
set view 43, 32
a(x,y)= sin(sqrt(x**2+y**2)) / sqrt(x**2+y**2)
b(x,y)= x**3*y**2
c(x,y)= sin(x) * cos(y)
splot a(x,y) lc rgb 'gray' linewidth 2, b(x,y) lc rgb 'red' linewidth 0.5, c(x,y) lc rgb 'blue' linewidth 1
1 ответ
Решение
Сначала добавьте блок данных (gnuplot 5.0 или выше) для всех линий сетки в виде векторов:
$data << EOD
-4 -3 -1 0 0 2
-4 -2 -1 0 0 2
-4 -1 -1 0 0 2
-4 0 -1 0 0 2
-4 1 -1 0 0 2
-4 2 -1 0 0 2
-4 3 -1 0 0 2
-3 4 -1 0 0 2
-2 4 -1 0 0 2
-1 4 -1 0 0 2
0 4 -1 0 0 2
1 4 -1 0 0 2
2 4 -1 0 0 2
3 4 -1 0 0 2
EOD
Теперь просто создайте стиль стрелки как черный без головок и добавьте этот "файл" на график с векторами и без заголовка.
set style arrow 1 nohead lc 'black'
replot "$data" with vectors arrowstyle 1 title ""
Если у вас нет gnuplot 5.0 или выше, поместите блок данных в файл и просто напишите файл.