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

Gnuplot:减少字体大小的空白优化,gnuplot,Gnuplot,我正在用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 k

我正在用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}
生成的图形很好,但由于减小了字体大小,因此有额外的空白:

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

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

  • 将\ footnotesize放在ylabel中会产生最差的结果(ytics在y轴上的位置不佳)

对于如何将空白设置为最小值并优化绘图,有人有什么建议吗?理想情况下,它将是一个命令,用于将ytics和ylabel之间的间距设置为固定值


谢谢

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

set terminal epslatex size 2.5,2.5 color blacktext
如果将字体大小设置为您计划在文档中使用的字体大小,则应计算适当的空白量。您只需要在
设置终端
行中包含一个
font“,6pt”
参数:

set terminal epslatex font ",6pt" size 2.5,2.5 color blacktext
这应该行得通

另外,您可以在output.tex中使用header参数包含额外的latex命令。也就是说,当您
\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" 

我会将
lmargin
缩小,以便y轴左侧的空间更小,然后使用
ylabel offset
将y轴标签向右移动。Gnuplot不知道,您稍后会减小字体大小,因此所有偏移(tics和标签)都太大。请尝试使用“独立字体”6“@user8153,谢谢tip@Christoph非常感谢,这正是我想要的。非常感谢您提供解决方案和其他信息,这非常有用。一个很好的,可以理解的答案@lovegnuplot那么请接受答案以表明它确实回答了您的问题:)