使用 gnuplot 5.2 或 5.4 for windows 设置鼠标格式:当提供明确的时间日期格式时会出现错误

使用 gnuplot 5.2 或 5.4 for windows 设置鼠标格式:当提供明确的时间日期格式时会出现错误
set mouse mouseformat

指定包含时间日期数据的格式时似乎不起作用。

set mouseformat 3

为您提供时间日期与 y 轴的关系,时间日期格式之前已使用 set timefmt 指定。但如果您明确为 mouseformat 语句提供时间日期格式,则会出现问题:例如,

set mouse mouseformat "%d %4.1f"

不会将日期数字作为 x 值,而是一个奇怪的数字(如果您提供%g,它会给出秒数)。我知道

set mouse mouseformat 3

没问题,但如果您想要使用用户定义格式的 y 轴值,或者想要删除 x 和 y 值之间的方括号和逗号,则不行。有人知道如何处理吗?

答案1

感谢 Ethan Merritt,以下是答案(最后略有改动):

请注意,格式被输入到sprintf,它对时间或日期一无所知。%d 是十进制整数的 C 标准格式,这就是sprintf将其视为的格式。

如果您想自定义格式化时间字符串,我认为您必须使用类似以下方法进行:

set mouse mouseformat function strftime("%d",x).' ,'.gprintf("%.2f",y)

其中 x 坐标通过时间格式馈送,而 y 坐标通过正常格式馈送。

相关内容