Я хотел бы создать фигуру, похожую на эту
в gnuplot. Итак, на поверхности есть линия, проходящая через слегка прозрачные плоскости. Точки не очень важны. Для своего рабочего процесса я использую gnuplottex. Пока я здесь:
Это мой код
\documentclass{standalone}
\newif\ifwindows
\IfFileExists{/dev/null}{\windowsfalse}{\windowstrue}
\ifwindows
\usepackage[miktex,cleanup]{gnuplottex}
\else
\usepackage[]{gnuplottex}
\fi
\begin{document}
%\begin{gnuplot}[terminal=pslatex, terminaloptions={auxfile color dashed rounded dl 1. lw 1. size 12cm, 9cm}]
\begin{gnuplot}[terminal=cairolatex, terminaloptions={pdf color dashed rounded dl 1. lw 1. size 12cm, 9cm}]
set grid front
set format x '%g'
set format y '%g'
set xr [0. : 5.]
set yr [0. : 5.]
f(x, y) = \
.5 * log(1. + 4. * x * (sqrt(y) + sqrt(1. + y))**2) / log(2.)
xopt(x) = \
(x * (1. + x)) / (1. + 2. * x)
yopt(x) = \
x**2 / (1. + 2. * x)
set isosamples 75
set samples 80
set contour base
set cntrparam levels incremental .5, .5
set cntrparam levels 12
set cntrlabel onecolor
set style line 1 lc rgb "#000000"
set style increment userstyle
set style fill transparent solid 0.6
set pm3d at s scansforward implicit nohidden3d
set parametric
set ur [0. : 5.]
set vr [0. : 5.]
splot \
u, v, f(u, v) t '' w pm3d, \
'++' u (xopt($1 * 1.85)):(yopt($1 * 1.85)):(f(xopt($1 * 1.85), yopt($1 * 1.85))) t '' w l lc 1, \
u, 1. - u, v t '' w surface
\end{gnuplot}
\end{document}
Я пробовал оба терминала pslatex
и cairolatex
для вывода ps и, соответственно, pdf. Проблема в том, что я бы хотел, чтобы сетка была удалена с плоскости и окрашена в монотонный (или, по крайней мере, другой) цвет. Сетку можно удалить с помощью nosurface
, но тогда у меня все равно останется плоскость всех цветов. PS: Я знаю, что прозрачность не очень хорошо сочетается с ps, но в этом примере поверхность с терминалом pslatex
действительно работает довольно хорошо.