将sqlite数据库导入gnuplot

时间:2018-09-25 11:01:37

标签: sqlite gnuplot

此问题已在部分帖子中得到解答:Gnuplot to plot SQlite db,但给出的答案不适用于应用程序。

我有一个代码读取UDP gps数据并将其存储到sqlite db中,作为时间,纬度,经度,即 id|time|lat|long 1|083204.69|7216.070578|15328.389869 2|083211.69|7216.075284|15328.423265 3|083214.69|7216.077313|15328.437593

当我尝试运行plot '< sqlite3 /home/usr/sqlite/db/gpsdata.db "SELECT id, lat, long FROM gps;"' using 1:2 title "latitude", '' using 1:3 title "longitude"时出现错误,提示x range is invalidwarning: Skipping data file with no valid points

我可以分别加载这些 SqliteField(f) = '< sqlite3 /home/cts/sqlite/db/gpsdata.db "SELECT '.f.' FROM gps;"' fields = 'time lat long' plot for [f in fields] SqliteField(f) using 0:1 title f 但是如果我想使x轴时间而不是一个计数变量(即不是0:1而是1:2),则似乎无法正确读取sqlite数据库。

我非常感谢您的帮助,希望这不会被视为重复问题。

1 个答案:

答案 0 :(得分:0)

当我找到它时,这是一个非常明显的答案:

在gnuplot中(如果从程序调用gnuplot,则在.conf文件中) 您需要

set datafile separator "|"

因为sqlite数据库是用管道分隔的。