Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.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 用季度tic标记绘制数据_Gnuplot - Fatal编程技术网

Gnuplot 用季度tic标记绘制数据

Gnuplot 用季度tic标记绘制数据,gnuplot,Gnuplot,我正在绘制一年中第3、6、9和12个月最后一天记录的数据。我希望tic分数在03/09,06/09,… 在阅读了文档之后,我认为可以这样做 set xtics "03/09", 7889220 因为三个月内大约有7889220秒。但tic标记不是从2009年3月开始,而是从第二天开始,如图所示(剩余部分已删除): 有没有办法迫使议会在月底作出决定 更新: 输入文件中的日期格式为mm/dd/yyyy,我正在使用以下命令读取该格式: set xdata time set timefmt "%m/

我正在绘制一年中第3、6、9和12个月最后一天记录的数据。我希望tic分数在
03/09,06/09,…

在阅读了文档之后,我认为可以这样做

set xtics "03/09", 7889220
因为三个月内大约有7889220秒。但tic标记不是从2009年3月开始,而是从第二天开始,如图所示(剩余部分已删除):

有没有办法迫使议会在月底作出决定

更新:

输入文件中的日期格式为
mm/dd/yyyy
,我正在使用以下命令读取该格式:

set xdata time
set timefmt "%m/%d/%Y"
然后我会这样做:

set format x "%m/%y"
set xrange ["03/31/2009":"12/31/2010"]
讨论: 当您使用
set format x“%m/%y”
时,Gnuplot的行为是将
xtics
放置在月份边界,因为这确实是此命令要求Gnuplot执行的操作

为了解决您的问题,根据您的数据集有多大,这里可能有两种可行的方法

方法1: 如果您的数据文件中确实有时间戳,一种可能是直接使用
xtics
进行绘图(如果您有一个大型数据集,则适用)

因此,您不再需要脚本中的所有时间命令,只需使用

plot 'Mydata.dat' u 2:xtic(1) w points
方法2: 另一个选项是设置自定义
xtics
,但是您必须手动完成此操作,如果您有一个大型数据集,这可能会很麻烦(如果数据集有数十个点,则适用)

会在你需要的时候给你抽搐

假设: 我假设文件中的第一列是时间戳,第二列是数据值。下面,我展示了一个使用手动设置方法(方法2)的图表

虚拟数据的结果:

您的数据文件中的时间戳是什么格式?是的,这取决于您在数据文件中使用的时间戳格式。发布后,我们将能够帮助您。谢谢,我已经更新了问题。
set xtics ("03/09" "03/31/2009", "06/09" "06/30/2009", "09/09" "09/30/2009", "12/09" "12/31/2009")