Changes between Version 2 and Version 3 of linux/jupyter


Ignore:
Timestamp:
2016/08/17 16:42:59 (8 years ago)
Author:
yuna
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • linux/jupyter

    v2 v3  
    1 # Jupyter Notebookメモ 
     1= Jupyter Notebookメモ 
    22 
    33CentOS7へのインストール。折角だからPython3系を利用してみる。 
     
    2222c.NotebookApp.port = 8888 
    2323}}} 
     24 
     25== sarを表示 
     26 
     27{{{ 
     28$ sar -A -o test.sar 1 10 
     29}}} 
     30 
     31などで取得したsarを表示するサンプルは、こんな感じ。 
     32 
     33 
     34{{{ 
     35%matplotlib inline 
     36 
     37import subprocess 
     38from subprocess import Popen,PIPE 
     39from datetime import datetime 
     40 
     41import matplotlib.pyplot as plt 
     42from matplotlib.font_manager import FontProperties 
     43import matplotlib.dates as mdates 
     44 
     45def readSarCPU(f): 
     46    args = ['/bin/bash','-c', "sadf -T --  -C " + f + " |awk '{print $3,$4,$6,$7}'"] 
     47    p = Popen(args,stdout=PIPE,stderr=PIPE) 
     48    out,err = p.communicate() 
     49    cpu = {'%user': [], '%nice': [], '%system': [], '%iowait': [], '%steal': [], '%idle': []} 
     50    timestamp = [] 
     51    x = 0 
     52    prev = "" 
     53    for l in out.split('\n'): 
     54        if l == "": 
     55            break; 
     56        r = l.split(" ") 
     57 
     58        if prev != r[1]: 
     59            timestamp.append(datetime.strptime(r[0]+" "+r[1], '%Y-%m-%d %H:%M:%S')) 
     60            prev = r[1] 
     61            x = x+1 
     62        cpu[r[2]].append(float(r[3])) 
     63    return (timestamp, cpu) 
     64 
     65 
     66 
     67def plot(x, data, title="",xlabel="",ylabel=""):  
     68 
     69    fp = FontProperties(fname='/usr/share/fonts/ipa-gothic/ipag.ttf') 
     70     
     71    if title!="": 
     72        plt.title(title, fontproperties=fp) 
     73    if xlabel!="": 
     74        plt.xlabel(xlabel,fontproperties=fp) 
     75    if ylabel!="": 
     76        plt.ylabel(ylabel,fontproperties=fp) 
     77 
     78    plt.xticks(rotation=30) 
     79    xfmt = mdates.DateFormatter('%m/%d %H:%M:%S') 
     80    ax = plt.gca() 
     81    ax.xaxis.set_major_formatter(xfmt) 
     82 
     83    for k in cpu.keys(): 
     84        plt.plot(x,cpu[k], label=k) 
     85 
     86    plt.legend(prop=fp,bbox_to_anchor=(1.05, 1), loc=2, borderaxespad=0.) 
     87    plt.show() 
     88 
     89timestamp, cpu = readSarCPU("test.sar") 
     90plot(x=timestamp, data=cpu,ylabel=u"%",xlabel=u"time") 
     91}}}