以下是Simplest annotated line chart
我有以下数据:
date num annotation
1435212223 48000 4.0.5-1-ARCH
1435622405 43000 4.0.6-1-ARCH
1435896936 48000 4.0.7-2-ARCH
它实际上来自一个简单的脚本,如echo $(cat /sys/class/thermal/thermal_zone0/temp) $(uname -r) | log2csv
。
现在我要绘制CSV图表。要在简单的shell中为Google可视化实现这一点,它就像:
cat <<END
data.addColumn('datetime', 'Date');
data.addColumn('number', 'temperature');
data.addColumn({type: 'string', role: 'tooltip'});
END
cat $(ls -t *.csv) | while read time number annotation
do
printf "data.addRow([new Date(%d), %d, \"%s\"]);\n" "${time}000" "$number" "$annotation"
done
正如您所看到的,我只是将值附加到CSV,运行shell脚本,然后使用Google图表绘制图表,如下所示:https://jsfiddle.net/q1mczqc1/3/
但是我不想使用Google,因为我的可视化需要离线工作。但是在研究其他图表库时,例如:
他们似乎需要JSON格式的数据(通常很复杂,通常是混合演示和数据),这些非平凡可以从CSV转换。这些值通常似乎标记为从列到基于行? (术语不确定)
因此,我正在寻找的优雅解决方案是一些不需要谷歌可视化并且代码量最少的行到图解决方案。
最终结果是我按echo $RANDOM | log2csv --build-webpage
上的返回并刷新我的浏览器以查看新值。
这里有哪些好的选择或技巧?