微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在Gnuplot中更改x轴比例

如何解决在Gnuplot中更改x轴比例

我正在尝试线性地更改x轴的比例,也就是说,两点之间的距离是成比例的,所以我有两个点(12.23和12.12)应该粘在一起,而其他点(例如19.35)应该将23、8间距适当,将23.8到24.7间距应该更近,但我无法正确执行此操作。

   reset
set encoding iso_8859_1
set key fixed right top vertical Right noreverse noenhanced autotitle noBox
set style increment default
set datafile missing '-'
set style data linespoints
set xtics border in scale 1,0.5 nomirror rotate by -45 # autojustify
set xtics  norangelimit 
set xtics ()
set log x
set key center top inside
set title "DC 5,86%" 
set xrange [ * : * ] noreverse writeback
set x2range [ * : * ] noreverse writeback
set yrange [ * : * ] noreverse writeback
set y2range [ * : * ] noreverse writeback
set zrange [ * : * ] noreverse writeback
set cbrange [ * : * ] noreverse writeback
set rrange [ * : * ] noreverse writeback

plot 'teste2.dat' using 2:xtic(1) title columnheader(2),'teste2.dat' using 3:xtic(1) title columnheader(3) 

我的test2.dat是:

    DC      L=1    L>1
42.85   15.98   -
32.5        -   26.09
30.76   23.12   -
24.7        -   31.75
23.8    33.1    -
19.35   42.11   -
14.03   61.72   -
12.23   62.65   -
12.12       -   75.38
10.98   44.58   -

我已经尝试了一段时间。有人可以帮我这个功能吗?

enter image description here

解决方法

确定要提供生成此图的实际代码吗?标题不一样。

无论如何,如果您查看代码,则有set log x行,因此您的x轴是对数缩放的。画出这条线,缩放比例应为线性。

实际上,您正在编码:using 2:xtic(1),这会将第一列设置为文本标签。 每个标签之间的距离将为1,而不是实际的x距离。 如果要在x轴上具有真实的x值,则必须编写代码:using 1:2

另一个问题可能是您的输入数据有小数点,在输出图中我看到逗号。 (不确定)gnuplot只会从输入数据中获取整数值。

尝试以下操作:

代码:

### simple plot
reset session

$Data <<EOD
    DC      L=1    L>1
42.85   15.98   -
32.5        -   26.09
30.76   23.12   -
24.7        -   31.75
23.8    33.1    -
19.35   42.11   -
14.03   61.72   -
12.23   62.65   -
12.12       -   75.38
10.98   44.58   -
EOD

plot $Data u 1:2 w lp pt 7 title columnheader(2),\
        '' u 1:3 w lp pt 7 title columnheader(3)
### end of code

结果:

enter image description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。