zoukankan      html  css  js  c++  java
  • [python工具] 如何使用plotly制作散列图

    注意

    • 最好使用python3, 我在mac上,默认2.7,安装起来相当费劲,使用python3 + pip3 + virtualenv 比较合适

    安装

    pip install plotly
    

    测试

    ➜  plotly_test git:(master) ✗ pwd
    /Users/muahao/work/vpc/muahao_tools/plotly_test
    ➜  plotly_test git:(master) ✗ cat first.py
    from plotly.graph_objs import *
    import plotly.offline
    trace0 = Scatter(
        x=[1,2,3,4,],
        y=[10,15,13,17]
    )
    trace1 = Scatter(
        x= [1,2,3,4],
        y= [16,5,11,9]
    )
    plotly.offline.plot([trace0,trace1])
    

    测试2:

    ➜  plotly_test git:(master) ✗ cat ping2_lentency200.log | head
    1582613630 3.03 ms
    1582613631 1.87 ms
    1582613633 0.436 ms
    1582613634 1.85 ms
    1582613635 0.412 ms
    1582613636 1.69 ms
    1582613637 1.98 ms
    1582613638 1.03 ms
    1582613639 3.62 ms
    1582613640 8.56 ms
    
    
    import sys
    import subprocess
    from plotly.graph_objs import *
    import plotly.offline
    
    # FILE = "ping2_lentency100.log.2001"
    # TITLE = "OpenVPN txqueuelen=100"
    
    
    FILE = "ping2_lentency200.log"
    TITLE = "OpenVPN txqueuelen=200"
    
    
    def get_x_y_data():
        x_list = list()
        y_list = list()
        cmd = "cat {}".format(FILE)
        code, out = subprocess.getstatusoutput(cmd)
        for line in out.split('
    '):
            if not line:
                continue
            line_split = line.split(' ')
            if len(line_split) < 2:
                continue
            x = line.split(' ')[0]
            y = line.split(' ')[1]
            x_list.append(x)
            y_list.append(y)
        return x_list, y_list
    
    
    if __name__ == "__main__":
        x_list, y_list = get_x_y_data()
    
        trace0 = Scatter(
            x=x_list,
            y=y_list,
            mode='markers'
        )
        data_comp = [trace0]
        # plotly.offline.plot([trace0])
    
        layout_comp = Layout(
            title=TITLE,
            hovermode='closest',
            xaxis=dict(
                title='timestamp',
                ticklen=5,
                zeroline=False,
                gridwidth=2,
            ),
            yaxis=dict(
                title='Latency (ms)',
                ticklen=5,
                gridwidth=2,
            ),
        )
        fig_comp = Figure(data=data_comp, layout=layout_comp)
        plotly.offline.plot(fig_comp, filename=TITLE)
    
    

  • 相关阅读:
    Java Socket
    路由器和交换机的区别
    OSI七层协议
    traceroute命令
    DNS递归和迭代原理
    出栈入栈顺序问题
    A记录、CNAME记录、MX记录
    DNS解析原理
    RAID磁盘阵列0、1、5、10
    http状态码
  • 原文地址:https://www.cnblogs.com/muahao/p/12362122.html
Copyright © 2011-2022 走看看