首页 > 解决方案 > rangelimited x 轴 gnuplot 消失

问题描述

我正在尝试在 gnuplot 中制作一个数字,类似于页面的底部。具体来说,我只希望在我的图形上绘制数据的地方有一个 x 轴和 y 轴。

ytics rangelimited对于 y 轴,使用该选项可以很好地工作。但是,当我xtics rangelimited在 x 轴上使用时,x 轴边框消失了:

xtics rangelimited with <code>set border</code> 选项

更奇怪的是,当我删除该set border选项时,我的图表上出现了一条对角线:

xtics rangelimited 没有 <code>set border</code> 选项

制作这些数字的最小工作示例是:

set terminal epslatex standalone size 8.0 cm, 8.0 cm

set output "test.tex"

# Define function
f(x) = abs(x)< 1 ? x**2 : NaN

set border 1+2 front #comment this out to get the diagonal line

set xrange [-1.5:1.5]
set xtics (-1.0,0,1.0) rangelimited nomirror

set yrange [-0.25: 1.25]
set ytics rangelimited nomirror

# plot line
plot f(x) with lines

我想为 x 轴获得与 y 轴相似的结果。有谁知道如何解决这个问题?

作为一个附带问题:我希望 0 也显示在 y 轴上。有没有自动的方法来做到这一点?还是我应该总是明确地告诉 gnuplot 将 tic 设置为 0?

标签: plotlatexgnuplot

解决方案


rangelimited x 轴仅绘制到跨数据点。您没有数据点,因为您正在绘制函数。为了使绘图表现为数据图而不是函数图,您可以使用以下约定:

plot '+' using 1:(f($1)) with lines

有关“绘制特殊文件名”的信息,请参阅 gnuplot 文档


推荐阅读