我有一个使用x-scale的数据集:
0.1 0.4 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
但是我需要将抽搐均匀排列,而不是将0.1和0.4压在角落里。我目前正在使用,
set xtics 1
set xtics add (0.1)(0.4)
但是这个空间分别为0.1和0.4。我已经附上了一个链接到我上传的我的虚拟数据集与我当前的问题。
答案 0 :(得分:3)
据我所知,您可以使用抽搐在gnuplot中执行以下操作(至少与您的问题相关):
您可以指定显示的抽动的开始,增量和结束。
如果您希望简单地设置2之后的抽搐(如
set xtics 2, 1
您可以做的另一件事是为某些值添加明确的tic标签,例如
set xtics add ("0.1" 0, "0.4" 1)
这会将标签 0.1 和 0.4 引入x标度,其中实际值为 0 且 1
但是,您无法修改图表的实际绘图。如果你在数据中说明
0.1 100
0.4 150
1 200
2 300
然后枪支将相应地绘制它。
解决方法可能如下所示:
用前面的两个值做一些hackery东西:
plot "Data.dat" every 1::2 w l, "" every 1::1::2 using ($1<magic>):($2)
magic 指定了您想要对第一列进行的一些代数运算 一切都是允许的,如果你的值是常数,你可以指定一个多项式,它通过点0,1和2输入0.1,0.4和1,就像这个多项式一样:
y = -1.85*x^2 + 4.26*x - 1.4
假设您有此数据文件:
0.1 0.41
0.4 0.03
1 0.97
2 0.74
3 0.05
4 0.15
5 0.11
6 0.60
7 0.76
8 0.25
然后你可以将前两个条目“重新排列”到x位置-1和0,如下所示:
plot "Data.dat" every 1::2 w l, \
"" every 1::0::2 using (-1.85*$1**2 + 4.26*$1 - 1.4):($2) w l
通过一些抽头标签和线条样式设置,它应该看起来与您所追求的完全一样。
我希望我明白你的意思,并且你可以利用我的建议
Cherio
Woltan