代码之家  ›  专栏  ›  技术社区  ›  lovegnuplot

Gnuplot-epslatex:减少字体大小的空白优化

  •  1
  • lovegnuplot  · 技术社区  · 7 年前

    我正在用epslatex终端在gnuplot中绘制图形。 这是我的。plt脚本:

    set terminal epslatex size 2.5,2.5 color blacktext
    set output 'xxx.tex'
    set format x '$10^{%T}$'
    set format y '${%1.1t}^{*}10^{%T}$'
    set ytics add ('0' 0)
    set xlabel "xxx"
    set ylabel "xxx"
    set logscale x
    set key below
    plot    "xxx.dat" using 1:2 title 'xxx' pt 4 ps 2 lc 1
    set output
    

    这是我的。嵌入的tex文件:

    \documentclass[10pt]{article}
    \usepackage[pdftex]{graphicx}
    \usepackage{epstopdf}
    \usepackage[cp1252]{inputenc}
    \usepackage{color}
    \begin{document}
    
    \begin{figure}[h!]
    \fontsize{6}{2}\selectfont
    \input{xxx.tex}
    \end{figure}
    

    生成的图形很好,但由于字体大小减小,会有额外的空白: plot

    • 我尝试了命令“ylabel offset”,但它只是将空白移到左侧,并没有调整实际绘图的大小。

    • 我还尝试了lmargin,但随后ylabel退出了图形空间。

    • 在ylabel中输入大小会产生最差的结果(ytics在y轴上的位置不佳)。

    有谁知道如何将空白设置为最小值并优化绘图?理想情况下,它将是一个命令,用于将ytics和ylabel之间的间距设置为固定值。。。

    非常感谢。

    1 回复  |  直到 7 年前
        1
  •  2
  •   tmgriffiths    7 年前

    epslatex终端将在轴周围(偏移)或存在文本的任何位置创建足够的空白,以确保在包含输出时有足够的空间来排版文本。主文档中的tex文档。它根据您在epslatex terminal命令中指定的字体大小计算空白量:

    set terminal epslatex size 2.5,2.5 color blacktext
    

    font ",6pt" 你的论点 set terminal 行:

    set terminal epslatex font ",6pt" size 2.5,2.5 color blacktext
    

    这应该行得通。

    另外,您可以在输出中包含额外的latex命令。带有标头参数的tex。那是你不需要包括他们当你 \input 您的gnuplot输出:

    set terminal epslatex font ",6pt" size 2.5,2.5 color blacktext header "\\fontsize{6}{2}\\selectfont"
    

    注意,反斜杠需要用反斜杠转义。你可以把各种各样的东西扔进去。我经常使我的数字和图形文本无衬线,所以我使用如下内容:

    set terminal epslatex font ",9pt" round\
        size 10.5cm,9cm \
        header "\\sffamily"