gnuplot epslatex终端生成TeX文件出现重复轴/标签及编译错误求助
解决gnuplot epslatex终端TeX文本重叠与编译错误问题
问题概述
- 使用gnuplot epslatex终端生成的TeX文件插入主文档后,出现坐标轴、图例、标签文本重叠,但单独查看EPS文件显示正常
- 更换TeX Live后出现
Missing } inserted编译错误 - 已尝试:epslatex单色模式、指定编码、重装MiKTeX/gnuplot、更换TeX编辑器,均未解决
复现代码
gnuplot代码
set terminal push set terminal epslatex size 10,5 cm #set terminal wxt set output 'Run3DimC.tex' # f(x) = 1/(2*sqrt(pi*d))*exp(-1*(1-x)**2/(4*d)) fit f(x) "Run3.dat" using 1:2 via d set xlabel "Dimensionless Time" set ylabel "Dimensionless Concentration" set xrange [0:2] set yrange [0:4] plot "Run3.dat" using 1:2 linetype 7 linecolor -1 title "Run 3", f(x) lc -1 title "Fit" set output set terminal pop pause -1 "Hit return to continue" # # Clean up: reset parameter defaults # reset
主TeX文档代码
\documentclass[12pt,letterpaper]{article} \usepackage[cp1252]{inputenc} \usepackage{amsmath} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{graphicx} \usepackage{color} \begin{document} \begin{figure}[h] \centering %\includegraphics{Run3DimC.eps} \input{Run3DimC.tex} \input{DULfitted.tex} \caption{Please work} \end{figure} \end{document}
解决方案
1. 修正gnuplot终端尺寸参数格式
gnuplot中size参数的逗号后必须加空格,否则TeX会错误解析尺寸数值,导致布局混乱。修改终端设置为:
set terminal epslatex size 10, 5 cm
2. 排查TeX文件语法错误
Missing } inserted错误源于生成的TeX文件存在未闭合的括号或语法问题:
- 单独编译
Run3DimC.tex和DULfitted.tex,定位错误行 - 检查gnuplot
fit命令生成的参数标签,若有特殊字符(如下划线),手动在TeX文件中转义(改为\_)
3. 统一字体与编码配置
- 在gnuplot终端设置中明确指定兼容TeX的字体和编码:
set terminal epslatex size 10, 5 cm font 'Times,10' encoding utf8 - 主TeX文档简化编码设置(TeX Live 2022默认支持UTF-8,移除过时的
inputenc):\documentclass[12pt,letterpaper]{article} \usepackage{amsmath,amsfonts,amssymb} \usepackage{graphicx} \usepackage{xcolor} % 替代旧版color包 \begin{document} \begin{figure}[h] \centering \input{Run3DimC.tex} \caption{Concentration vs Dimensionless Time} \end{figure} \end{document}
4. 拆分多图插入环境
每个gnuplot生成的TeX文件自带独立布局参数,同个figure环境插入多个文件会互相干扰,建议拆分:
\begin{figure}[h] \centering \input{Run3DimC.tex} \caption{Run 3 Concentration Fit} \end{figure} \begin{figure}[h] \centering \input{DULfitted.tex} \caption{DUL Fitted Results} \end{figure}
内容的提问来源于stack exchange,提问作者4gottenMyMaths
相关产品推荐
相关产品推荐

