gnuplottex 和 cairolatex 用于 3D 绘图:删除多余的空格

gnuplottex 和 cairolatex 用于 3D 绘图:删除多余的空格

正如标题所述。

我使用 gnuplottex 和 cairolatex 终端绘制二维和三维图。虽然二维图看起来不错,但三维图的空白太多。我尝试了负 vspace、负 l/r/t/bmargin(显然不起作用)以及手动设置大小。第三个方法得到的图非常小,非常小。

我的代码如下:

\begin{figure}
\begin{gnuplot}[terminal=cairolatex, terminaloptions={size 7in,6in crop}]
***gnuplot code***
\end{gnuplot}
\caption []{}
\label{fig:blah}
\end{figure}

结果是空白太多。我需要填满文档的宽度,如箭头所示。

我不确定“crop”是否有用。我尝试了 epslatex,但它没有改变任何东西。文档是 A4 大小的纸张。使用 multiplot 时结果相同。

编辑:当我使用 set view xyz 时,空白会多很多。不过我需要这个。也许这有关系?

编辑2:MWE:

\documentclass[a4paper, 12pt, oneside]{book}

\usepackage[cleanup, subfolder]{gnuplottex}
\usepackage[top=0.5in, bottom=0.5in, left=1.5in, right=1.25in]{geometry}
\usepackage[scaled=.90]{helvet}
\usepackage{courier}
\usepackage{color}
\usepackage{graphicx}
\usepackage{lipsum}
\begin{document}

\lipsum[1]

\begin{figure}[h!]
\begin{gnuplot}[terminal=cairolatex]
set parametric
set view 66,200
set view equal xyz
set ticslevel 0
set xrange [-1:3]
set yrange [-1:3]
set zrange [-1:1]
set xlabel"x"
set ylabel "y"
set zlabel "z"
r = 0.5
splot [-pi:pi][-pi/2:pi/2] r*cos(u)*cos(v), r*sin(u)*cos(v), r*sin(v) lc 3 title "sphere"
\end{gnuplot}
\end{figure}

\lipsum[1]

\end{document}

它的外观

空间太大

答案1

这就是你所追求的吗?

\documentclass{article}
\usepackage{gnuplottex}
\begin{document}

\begin{figure}
  \begin{gnuplot}[terminal=cairolatex,terminaloptions={size 5in,4in}]
    set format '$%g$'
    set xlabel '$x$'
    set ylabel '$y$'
    set zlabel '$z$'

    set xtics offset 0,-.5
    set ytics offset 1,-.5

    set parametric
    unset key

    set xrange [-3:1]
    set yrange [-3:1]
    set zrange [-1:1]

    set urange [0:pi]
    set vrange [0:2*pi]

    r = .5

    splot r*sin(u)*cos(v),r*sin(u)*sin(v),r*cos(u)
  \end{gnuplot}
  \caption{Some gnuplot figure}
  \label{fig:blah}
\end{figure}

\end{document}

在此处输入图片描述

答案2

您可以\captionsetup[]{}将图形或子图命令与belowskip和/或aboveskip选项一起使用。

一个例子:

\begin{figure}
    \captionsetup[subfigure]{aboveskip=-15pt,belowskip=0pt}
    \begin{subfigure}[b]{0.45\textwidth}
    \begin{gnuplot}[terminal=epslatex, terminaloptions={size 7cm, 5cm}]
     ...
    \end{gnuplot}
    \caption{Subcaption A.}
    \end{subfigure}
    \begin{subfigure}[b]{0.45\textwidth}
    \begin{gnuplot}[terminal=epslatex, terminaloptions={size 7cm, 5cm}]
     ...
    \end{gnuplot}
    \caption{Subcaption B.}
    \end{subfigure}
    \caption{A caption.}
\end{figure}

选项

    aboveskip=-15pt

减去标题上方的空白

相关内容