一尘不染

使用gnuplot绘制sqlite数据库

linux

我有一个sqlite数据库,其中包含以下格式的基本天气信息:

temp1 temp2 pressure humidity
22    23    1024     40
24    25    1027     45
25    26    1020     62
18    15    1019     80

我如何使用绘制这些数据gnuplot?在能够绘制数据之前,我必须重新整理数据吗?


阅读 310

收藏
2020-06-07

共1个答案

一尘不染

要从sqlite数据库中提取数据,您可以使用sqlite3命令行工具即时提取数据。使用gnuplot可以做到这一点,方法是使用a
<生成外壳并使用给定的shell命令的输出进行绘图。

plot '< sqlite3 myfile.db3 "SELECT temp1, temp2, pressure, humidity FROM myTable;"' using 0:1 title 'temp1', \
     '' using 0:2 title 'temp2'

这将为每个图提取所有四个字段(''重复先前的文件名/ shell命令)。您还可以使用函数格式化shell命令:

SqliteField(f) = '< sqlite3 myfile.db3 "SELECT '.f.' from myTable;"'
fields = 'temp1 temp2 pressure humidity'
plot for [f in fields] SqliteField(f) using 0:1 title f
2020-06-07