Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Gnuplot,我如何得到一个值的长度?_Gnuplot_Strlen - Fatal编程技术网

Gnuplot,我如何得到一个值的长度?

Gnuplot,我如何得到一个值的长度?,gnuplot,strlen,Gnuplot,Strlen,我想知道一个值的字符数 但是strlen()只用于字符串,不用于值。 (strlen(值(“zon”)不起作用) 示例:zon=12000,len值为5 gnuplot可以这样做吗?要获取数值的位数,请使用log10并将数值四舍五入: zon = 12000 digits = int(ceil(log10(zon))) print digits 按要求打印5。在某些情况下,您可能希望在打印数字时看到数字的长度: zon = 12000 print strlen(sprintf("%d", zo

我想知道一个值的字符数

但是strlen()只用于字符串,不用于值。 (strlen(值(“zon”)不起作用)

示例:zon=12000,len值为5


gnuplot可以这样做吗?

要获取数值的位数,请使用
log10
并将数值四舍五入:

zon = 12000
digits = int(ceil(log10(zon)))
print digits

按要求打印
5

在某些情况下,您可能希望在打印数字时看到数字的长度:

zon = 12000
print strlen(sprintf("%d", zon))

这还打印了5个。

这是我提出的两个问题的结果

  • 可以在gnuplot中获取de y轴的值吗
  • 我如何得到一个值的长度
原因是,我希望列中尽可能有一个值。 下面是结果,然后是所需的脚本片段

这里是图形; 这里是剧本片段

set terminal unknown
plot "<tail -24 uur.txt" using 1:(-$7) w p, '' u 1:4 w p
ymax= GPVAL_Y_MAX
ymin= GPVAL_Y_MIN
ptmax=ymax*dy/(ymax-ymin)
ptmin=ymin*dy/(ymax-ymin)
replot
设置终端未知

情节“我已经搜索了至少五天了,看看这个,这个很好用。谢谢这个也很好用,甚至“n=strlen(sprintf(“%d”,sun))”,也谢谢。
"<tail -24 uur.txt" u ($1-600):4:( $4>0 && ($4/ymax*ptmax)> (10 * strlen(sprintf("%d", $4))) ? $4 : sprintf("")) w labels right rotate font ",8" tc rgb "white" offset 0,-0.1 notitle,\
"<tail -24 uur.txt" u ($1-600):4:( $4>0 && ($4/ymax*ptmax)<=(10 * strlen(sprintf("%d", $4))) ? $4 : sprintf("")) w labels  left rotate font ",8" tc rgb "black" offset 0,0.1  notitle,\