当前位置:主页 > python教程 > python实现数据图表

python数据图表是实现代码

发布:2020-07-19 17:24:28 58


给网友们整理相关的编程文章,网友方薇歌根据主题投稿了本篇教程内容,涉及到python、数据图表、python、plotly、python绘制图表、python实现数据图表相关内容,已被623网友关注,内容中涉及的知识点可以在下方直接下载获取。

python实现数据图表

平时压力测试,生成一些数据后分析,直接看 log 不是很直观,前段时间看到公司同事分享了一个绘制图表python 模块 : plotly, 觉得很实用,利用周末时间熟悉下。

python实现数据图表
plotly

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

安装

在 ubuntu 环境下,安装 plotly 很简单
python 版本2.7+

$ sudo pip install plotly

 

绘图

在 plotly 网站注册后,可以直接将生成的图片保存到网站上,便于共享保存。
这里使用离线的接口,生成的 html 保存在本地文件

绘制直线图

先随便搞一组数据用来绘制图表

 

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

通过上述脚本,获取每秒钟网卡的3个数据,记录文本,利用 ploty 按时间绘制成直线图,实现如下:

 

#!/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 = []
  # 构建 time - rx 数据关系,折线图
  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)

  # 设置图表布局
  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()

生成图表如下所示 :

python实现数据图表
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()

python实现数据图表

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()

python实现数据图表


参考资料

相关文章

  • python获取列表最后一个元素的方法总结

    发布:2019-07-09

    list是Python内置的一种数据类型。list是一种有序的集合,可以随时添加和删除其中的元素。可通过列表最后一个元素的索引来获取它,语句为list[-1]。


  • Python通过正则表实现文件内容替换的实例

    发布:2020-04-23

    这篇文章主要介绍了Python基于正则表达式实现文件内容替换的方法,涉及Python文件、目录及字符串正则替换等相关操作技巧,需要的朋友可以参考下


  • 使用python实现抖音表白

    发布:2020-03-11

    这篇文章主要为大家详细介绍了python抖音表白程序源代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下


  • python仿抖音表白效果制作

    发布:2020-04-06

    这篇文章主要教大家制作python抖音表白神器,仿制抖音表白小软件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下


  • 解析Python数据结构之双向链表的定义及使用方法

    发布:2020-01-19

    这篇文章主要介绍了Python数据结构之双向链表的定义与使用方法,结合实例形式分析了Python双向链表的概念、原理、使用方法及相关注意事项,需要的朋友可以参考下


  • Python正则表达式使用实例详解

    发布:2019-11-12

    本文给大家总结了7个常用的Python正则表达式的使用范例以及简单解释分析,有需要的小伙伴可以参考下


  • 实例分析Python修改IE注册表功能

    发布:2020-02-26

    这篇文章主要介绍了Python实现修改IE注册表功能,结合完整实例形式分析了Python操作IE注册表项的相关实现技巧与注意事项,需要的朋友可以参考下


  • Python列表生成式和生成器操作详解

    发布:2019-06-22

    这篇文章主要介绍了Python列表生成式与生成器操作,结合实例形式分析了Python列表生成式与生成器的功能、使用方法及相关操作技巧,需要的朋友可以参考下


  • Python初始化列表的方法 如何初始化列表

    发布:2019-06-28

    Python是一种非常灵活的语言,可以通过多种方式执行单个任务,例如,可以通过多种方式执行初始化列表。下面本篇文章就来带大家了解几种Python初始化的方法,并比较一下这几种方法的效率,


  • python或者的表示方式和用法

    发布:2019-06-28

    python中或者用“or”表示,逻辑表达式为x or y。​Python语言支持逻辑运算符,假设变量a为10, b为20,那么(a or b) 则返回10。


网友讨论