For investors
股價:
5.36 美元 %For investors
股價:
5.36 美元 %認真做教育 專心促就業(yè)
Gnuplot簡介
對gnuplot 作圖有興趣的同學(xué),可以參考其官網(wǎng)的手冊,其中有大量的范例。
時序圖的繪制—使用Gnuplot #/Linux/2014-08/104930.htm
Tpcc-MySQL測試并使用Gnuplot生成圖表 #/Linux/2014-03/98566.htm
RH442攻略之Gnuplot #/Linux/2014-03/98405.htm
Ubuntu下應(yīng)用Gnuplot進行數(shù)據(jù)的可視化 #/Linux/2011-12/50358.htm
利用oprofile分析fortran并用Gnuplot畫圖的shell腳本 #/Linux/2011-04/34497.htm
Ubuntu下安裝Gnuplot 4.6.0 #/Linux/2014-09/106297.htm
插入一點業(yè)務(wù)背景
我前面有篇文章介紹了一鍵搭建blackhole從庫的工具,其中提到,blackhole從庫的一個用途是作為某種分析程序的數(shù)據(jù)源。實際上,微博相關(guān)的幾個關(guān)鍵數(shù)據(jù)指標(biāo),包括用戶、關(guān)注、博文、轉(zhuǎn)發(fā)、評論、私信等,都搭建了對應(yīng)的blackhole從庫,我們的分析程序會定期解析binlog,來分析用戶在某個時段的活躍程度。為了得到近乎適時的統(tǒng)計數(shù)據(jù),我采用crontab每隔5分鐘在blackhole從庫上執(zhí)行一次flush logs,緊接著分析被切割的日志。這樣就可以立即得到粒度為5分鐘的用戶活躍統(tǒng)計數(shù)據(jù),再保存到數(shù)據(jù)庫中,用各種方法展現(xiàn),環(huán)比、同比、平均值等,都可以很容易的獲得。
利用gnuplot作圖
有了數(shù)據(jù)之后,采用rrdtool、excel、google API等都可以作圖。我的需求是,每天上午10點,定時郵件發(fā)送前一天的統(tǒng)計數(shù)據(jù),并附上直觀的圖形說明。最終,我選擇采用gnuplot來作圖。 附數(shù)據(jù)如下(數(shù)據(jù)非真實數(shù)據(jù)。一共是7列,其中日期和時間整體作為一列,別混淆):
2012-10-13 03:45:16 1893 61564 28476 37180 265190 8794
2012-10-13 03:50:16 1823 60016 27296 38648 276206 8753
2012-10-13 03:55:15 1606 58628 26688 32292 262998 8377
2012-10-13 04:00:15 1539 57988 25628 36472 249984 8079
2012-10-13 04:05:14 1641 58552 25432 35064 233832 7493
2012-10-13 04:10:16 1731 59808 25108 36348 235218 6909
2012-10-13 04:15:15 1720 56444 24124 38072 228382 6892
2012-10-13 04:20:15 1680 53952 23088 38480 233300 6742
2012-10-13 04:25:14 1582 53600 22420 37072 232974 6477
2012-10-13 04:30:16 1531 53560 22612 37896 229090 6168
作圖的腳本如下:
#!/usr/bin/gnuplot
set terminal png #輸出格式為png文件
set output "image_output_file.png" #指定數(shù)據(jù)文件名稱
set title "KPI"
set ylabel 'net added count'
set yrange [0:700000] #設(shè)置Y軸的范圍
set key right top height 3 spacing 2 #設(shè)置圖例
set border 3 lt 3 lw 2 #這會讓你的坐標(biāo)圖的border更好看
set grid #顯示網(wǎng)格
set key box #它把圖例用一個box裝起來
set xtics nomirror rotate #只需要一個x軸
set ytics mirror #只需要一個y軸
set mytics 5 #可以增加分刻度
set mxtics 1
set pointsize 0.4 #點的像素大小
set datafile separator '\t' #數(shù)據(jù)文件的字段用\t分開
#注意表的數(shù)據(jù)導(dǎo)出的時候默認是按照tab來分隔的
set xdata time #x軸代表時間
set timefmt "%Y-%m-%d %H:%M:%S" #數(shù)據(jù)文件中時間的格式
set format x " %Y-%m-%d %H:%M" #x坐標(biāo)軸顯示的數(shù)據(jù)
【免責(zé)聲明】本文部分系轉(zhuǎn)載,轉(zhuǎn)載目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點和對其真實性負責(zé)。如涉及作品內(nèi)容、版權(quán)和其它問題,請在30日內(nèi)與聯(lián)系我們,我們會予以更改或刪除相關(guān)文章,以保證您的權(quán)益!