使用 gnuplottex 创建均匀分布的多重图

使用 gnuplottex 创建均匀分布的多重图

我正在尝试使用 制作一个垂直多图布局gnuplottex。它将包含的不同数据集共享相同的 x 轴和 x 范围,因此只有最底部的图需要绘制 x 轴。然后,所有其他图都应放置在上方,中间没有边距,以便所有图看起来都“相连”。

这是一个最简单的例子几乎我想要的是:

\documentclass[a4paper]{article}
\usepackage{gnuplottex}

\begin{document}

\begin{gnuplot}[terminal=cairolatex]

set multiplot layout 2,1
set tmargin 0
set bmargin 0

set key top left
set grid
set ylabel 'My y-label'
unset xlabel
set xtics format ""

plot sin(x) ls 1

set xlabel 'My x-label'
set xtics format "%f"
set bmargin 4

plot cos(x) ls 2

\end{gnuplot}

\end{document}

不幸的是,由于set bmargin 4第二个 plot 命令之前有 ,这会使最底部的图比其他图的高度低。如果我删除set bmargin 4,两个图的大小相同,但 x-tics 和 -label 会被截断:

有什么方法可以同时获得可见的抽搐和相同的尺寸吗?

(这个问题显然更多的是关于gnuplot一般情况而不是gnuplottex。如果这里不适合问这个问题,请纠正我。)

答案1

考虑切换到 tikz 终端:

enter image description here

\documentclass[a4paper]{article}
\usepackage[miktex]{gnuplottex}
\usepackage{gnuplot-lua-tikz}

\begin{document}

\begin{gnuplot}[terminal=tikz]

set multiplot layout 2,1
set tmargin 0
set bmargin 0

set key top left
set grid
set ylabel 'My y-label'
unset xlabel
set xtics format ""

plot sin(x) ls 1

set xlabel 'My x-label'
set xtics format "%f"

plot cos(x) ls 2

\end{gnuplot}

\end{document}

相关内容