Fri Aug 28 00:32:42 JST 2015

降水確率のプロット. gnuplot bash timefmt xdata

主に、時刻を目盛りに用いたプロットのためのgnuplotコマンドのメモ。

まず、データを拾ってくるところ

#!/bin/sh

curl -s http://sx9.jp/weather/tokyo-hongo.js |
grep ' \(0\|1\), ' |
sed 's/ *data.setValue([0-9]*,//g' | sed 's/);//g' | sed 's/[ \t]//g' |
sed 's#0,.\([0-9]*\)月\([0-9]*\)日\([0-9]*\)時\([0-9]*\)分.*#2015/\1/\2 \3:\4 #' |
sed 's#1,\([0-9]*\)#\1@#' |
tr -d '\n' | sed 's/@/\n/g' >data

上を動かすと、こんなデータが得られる

2015/08/28 00:21 0
2015/08/28 00:22 0
2015/08/28 00:23 0
:

これをプロットする

set terminal png
set output 'plot.png'

set xtics rotate by -60
set xdata time
set timefmt "%Y/%m/%d %H:%M"
set format x "%m/%d %H:%M"

set yrange [0:100]
set grid

set style fill solid border lc rgb "#00ffff"
set style line 1 lc rgb "#bbffff"
set style data filledcurves x1

plot 'data' using 1:3 smooth csplines linestyle 1 lw 3 with filledcurves

普通なら with linepoint のところを smooth csplines としてる. (データ点のあいだを結ぶ線のなめらかさを変える)