python 數(shù)據(jù)圖表呈現(xiàn)

@(python)

平時壓力測試束昵,生成一些數(shù)據(jù)后分析卖词,直接看 log 不是很直觀割按,前段時間看到公司同事分享了一個繪制圖表python 模塊 : plotly, 覺得很實用静浴,利用周末時間熟悉下堰氓。

plotly

plotly 主頁 : https://plot.ly/python/

安裝

在 ubuntu 環(huán)境下,安裝 plotly 很簡單
python 版本2.7+

$ sudo pip install plotly

繪圖

在 plotly 網(wǎng)站注冊后苹享,可以直接將生成的圖片保存到網(wǎng)站上双絮,便于共享保存。
這里使用離線的接口得问,生成的 html 保存在本地文件

繪制直線圖

先隨便搞一組數(shù)據(jù)用來繪制圖表

lcd@ubuntu:~/$ cat gen_log.sh 
#!/bin/bash
count=$1
while [ $count -gt 0 ]
do
    sar -n DEV 1 1 | grep "Average:" | grep "eth0" | awk '{print $4,$5,$6}'
    count=$(($count-1))
done
lcd@ubuntu:~/$ sh gen_log.sh 1000 > log.txt

通過上述腳本囤攀,獲取每秒鐘網(wǎng)卡的3個數(shù)據(jù),記錄文本宫纬,利用 ploty 按時間繪制成直線圖焚挠,實現(xiàn)如下:

#!/usr/bin/env python
import plotly.offline as pltoff
import plotly.graph_objs as go

def line_plots(name="line_plots.html"):
    dataset = {
        'time': [],
        'rx': [],
        'tx': [],
        'util': []
    }
    with open("./log.txt") as f:
        i = 0
        for line in f:
            items = line.split()
            dataset['time'].append(i)
            dataset['rx'].append(items[0])
            dataset['tx'].append(items[1])
            dataset['util'].append(items[2])
            i += 1
            
    data_g = []
    # 構(gòu)建 time - rx 數(shù)據(jù)關(guān)系,折線圖
    tr_rx = go.Scatter(
        x = dataset['time'],
        y = dataset['rx'],
        name = 'rx')
    data_g.append(tr_rx)

    tr_tx = go.Scatter(
        x = dataset['time'],
        y = dataset['tx'],
        name = 'tx')
    data_g.append(tr_tx)

    tr_util = go.Scatter(
        x = dataset['time'],
        y = dataset['util'],
        name = 'util')
    data_g.append(tr_util)

    # 設(shè)置圖表布局
    layout = go.Layout(title="Line plots",
        xaxis={'title':'time'}, yaxis={'title':'value'})
    fig = go.Figure(data=data_g, layout=layout)
    # 生成離線html
    pltoff.plot(fig, filename=name)

if __name__=='__main__':
    line_plots()

生成圖表如下所示 :

line_plot

柱形圖

#!/usr/bin/env python
import plotly.offline as pltoff
import plotly.graph_objs as go

def bar_charts(name="bar_charts.html"):
    dataset = {'x':['man', 'woman'],
               'y1':[35, 26],
               'y2':[33, 30]}
    data_g = []
    tr_y1 = go.Bar(
        x = dataset['x'],
        y = dataset['y1'],
        name = '2016'

    )
    data_g.append(tr_y1)

    tr_y2 = go.Bar(
    x = dataset['x'],
    y = dataset['y2'],
    name = '2017'

    )
    data_g.append(tr_y2)
    layout = go.Layout(title="bar charts",
        xaxis={'title':'x'}, yaxis={'title':'value'})
    fig = go.Figure(data=data_g, layout=layout)
    pltoff.plot(fig, filename=name)

if __name__=='__main__':
    bar_charts()
bar char

餅狀圖

#!/usr/bin/env python
import plotly.offline as pltoff
import plotly.graph_objs as go

def pie_charts(name='pie_chart.html'):
    dataset = {
        'labels':['Windows', 'Linux', 'MacOS'],
        'values':[280, 10, 30]}
    data_g = []
    tr_p = go.Pie(
    labels = dataset['labels'],
    values = dataset['values']

    )
    data_g.append(tr_p)
    layout = go.Layout(title="pie charts")
    fig = go.Figure(data=data_g, layout=layout)
    pltoff.plot(fig, filename=name)

if __name__=='__main__':
    pie_charts()

pie_chart
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末漓骚,一起剝皮案震驚了整個濱河市蝌衔,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌蝌蹂,老刑警劉巖噩斟,帶你破解...
    沈念sama閱讀 217,406評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異孤个,居然都是意外死亡剃允,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評論 3 393
  • 文/潘曉璐 我一進店門齐鲤,熙熙樓的掌柜王于貴愁眉苦臉地迎上來斥废,“玉大人,你說我怎么就攤上這事给郊∧等猓” “怎么了?”我有些...
    開封第一講書人閱讀 163,711評論 0 353
  • 文/不壞的土叔 我叫張陵丑罪,是天一觀的道長。 經(jīng)常有香客問我凤壁,道長吩屹,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,380評論 1 293
  • 正文 為了忘掉前任煤搜,我火速辦了婚禮,結(jié)果婚禮上唧席,老公的妹妹穿的比我還像新娘擦盾。我一直安慰自己嘲驾,他們只是感情好,可當我...
    茶點故事閱讀 67,432評論 6 392
  • 文/花漫 我一把揭開白布迹卢。 她就那樣靜靜地躺著辽故,像睡著了一般。 火紅的嫁衣襯著肌膚如雪腐碱。 梳的紋絲不亂的頭發(fā)上誊垢,一...
    開封第一講書人閱讀 51,301評論 1 301
  • 那天,我揣著相機與錄音症见,去河邊找鬼喂走。 笑死,一個胖子當著我的面吹牛谋作,可吹牛的內(nèi)容都是我干的芋肠。 我是一名探鬼主播,決...
    沈念sama閱讀 40,145評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼遵蚜,長吁一口氣:“原來是場噩夢啊……” “哼帖池!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起谬晕,我...
    開封第一講書人閱讀 39,008評論 0 276
  • 序言:老撾萬榮一對情侶失蹤碘裕,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后攒钳,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體帮孔,經(jīng)...
    沈念sama閱讀 45,443評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,649評論 3 334
  • 正文 我和宋清朗相戀三年不撑,在試婚紗的時候發(fā)現(xiàn)自己被綠了文兢。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,795評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡焕檬,死狀恐怖姆坚,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情实愚,我是刑警寧澤兼呵,帶...
    沈念sama閱讀 35,501評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站腊敲,受9級特大地震影響击喂,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜碰辅,卻給世界環(huán)境...
    茶點故事閱讀 41,119評論 3 328
  • 文/蒙蒙 一懂昂、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧没宾,春花似錦凌彬、人聲如沸沸柔。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽褐澎。三九已至,卻和暖如春原探,著一層夾襖步出監(jiān)牢的瞬間乱凿,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評論 1 269
  • 我被黑心中介騙來泰國打工咽弦, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留徒蟆,地道東北人。 一個月前我還...
    沈念sama閱讀 47,899評論 2 370
  • 正文 我出身青樓型型,卻偏偏與公主長得像段审,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子闹蒜,可洞房花燭夜當晚...
    茶點故事閱讀 44,724評論 2 354

推薦閱讀更多精彩內(nèi)容