python报表(pygal)
来源:互联网 发布:c语言有什么用途 编辑:程序博客网 时间:2024/06/05 20:04
前言:
说说python下绘制图表。以前绘制数据的图表一般用rrdtool或者是前端的图表js。先说说rrdtool。这东西是很强,cacti ganglia都用他,但是用起来有些麻烦,当然用熟悉了后还算可以 ,我一直都不咋喜欢用rrdtool,归档格式有些蛋疼,第二就是还要save成图片。。。。当然现在有库,可以直接根据url get参数,生成图片,压力还是在监控master端。。。 后者js的图表简单多了,我服务器端只是提供一个时间戳和value值的对应关系。 绘制图表还是让客户用浏览器自己去渲染。 压力不大的,以后的扩展也相当的好做,只是需要做库同步就行了。
像我,这时候这是想测试下golang python ssdb的读写测试,测试程序还差点,先找个图表。在国外论坛发现了pygal,这东西相当的干练和简单,他的格式其实更像是highcharts之类的js图表 !
用起来就简单,你只要把得到的数据,往一个地方一扔,然后用pygal直接就可以看了。 他是svg html的模式。
pygal使用相当的简单:
titile是图表的标题
x_labels是横轴的数据
剩下的是主数据
一个例子,pygal是一个html里面含有svg图表数据。
import pygalline_chart = pygal.Line()line_chart.title = 'Browser usage evolution (in %)'line_chart.x_labels = ['2002', '2003', '2004', '2005', '2006', '2007', '2008', '2009', '2010', '2011', '2012']line_chart.add('Firefox', [1, 2, 0, 16.6, 25, 31, 36.4, 45.5, 46.3, 42.8, 37.1])line_chart.add('Chrome', [3, 2, 5, 77, 43, 22, 0, 3.9, 10.8, 23.8, 35.3])line_chart.add('IE', [85.8, 84.6, 84.7, 74.5, 66, 58.6, 54.7, 44.8, 36.2, 26.6, 20.1])line_chart.add('Others', [14.2, 15.4, 15.3, 8.9, 9, 10.4, 8.9, 5.8, 6.7, 6.8, 7.5])line_chart.render()import osf=open('aaa.html','w')f.write(line_chart.render())f.close()
import pygalline_chart = pygal.Line()line_chart.title = 'xiaorui.cc'line_chart.x_labels = ['2002', '2003', '2004', '2005', '2006', '2007', '2008', '2009', '2010', '2011', '2012']line_chart.add('Firefox', [1, 2, 0, 16.6, 25, 31, 36.4, 45.5, 46.3, 42.8, 37.1])line_chart.add('Chrome', [3, 2, 5, 77, 43, 22, 0, 3.9, 10.8, 23.8, 35.3])line_chart.add('IE', [85.8, 84.6, 84.7, 74.5, 66, 58.6, 54.7, 44.8, 36.2, 26.6, 20.1])line_chart.add('Others', [14.2, 15.4, 15.3, 8.9, 9, 10.4, 8.9, 5.8, 6.7, 6.8, 7.5])return line_chart.render()
line_chart = pygal.StackedLine(fill=True)line_chart.title = 'xiaorui.cc'line_chart.x_labels = map(str, range(2002, 2013))line_chart.add('Firefox', [None, None, 0, 16.6, 25, 31, 36.4, 45.5, 46.3, 42.8, 37.1])line_chart.add('Chrome', [None, None, None, None, None, None, 0, 3.9, 10.8, 23.8, 35.3])line_chart.add('IE', [85.8, 84.6, 84.7, 74.5, 66, 58.6, 54.7, 44.8, 36.2, 26.6, 20.1])line_chart.add('Others', [14.2, 15.4, 15.3, 8.9, 9, 10.4, 8.9, 5.8, 6.7, 6.8, 7.5])return line_chart.render()
pie_chart = pygal.Pie()pie_chart.title = 'xiaorui.cc'pie_chart.add('IE', 19.5)pie_chart.add('Firefox', 36.6)pie_chart.add('Chrome', 36.3)pie_chart.add('Safari', 4.5)pie_chart.add('Opera', 2.3)return pie_chart.render()
worldmap_chart = pygal.Worldmap()worldmap_chart.title = 'Some countries'worldmap_chart.add('F countries', ['fr', 'fi'])worldmap_chart.add('M countries', ['ma', 'mc', 'md', 'me', 'mg', 'mk', 'ml', 'mm', 'mn', 'mo', 'mr', 'mt', 'mu', 'mv', 'mw', 'mx', 'my', 'mz'])worldmap_chart.add('U countries', ['ua', 'ug', 'us', 'uy', 'uz'])return worldmap_chart.render()
改成监控那就更简单了,只要格式化数据,放到x轴和y轴就行了。
不多说,怎么玩就看你自己了。
0 0
- python报表(pygal)
- Python进阶 -- 2. pygal
- python pygal绘制直方图
- python : flask and pygal bar
- python使用pygal进行绘制数据图表和监控图表
- python使用pygal进行绘制数据图表和监控图表
- python第三方库-pygal绘图功能介绍1-线图
- python可视化包pygal的安装(利用pip)
- python可视化——使用pygal模拟掷骰子
- python处理JSON格式数据并利用pygal绘制世界地图
- 【Python-3.5】Pygal模拟骰子点数,分析结果可视化
- 读书笔记-python,数据可视化之Pygal的使用
- pygal-直方图
- python.pygal/reuqests学习范例-爬取github上Python热度并数据化显示
- python.pygal/random学习范例-模拟掷六面骰子点数次数生成直方图
- python.json/pygal.maps.world学习范例-读取json格式文件、生成世界地图
- Annoying experience with pygal
- Pygal and Die simulating
- BCD译码的实现_移位加3算法
- 彻底解决Webpack打包慢的问题
- java设计模式
- linux内核中红黑树代码理解
- Linux 查看日志的命令
- python报表(pygal)
- Training in YOLOv2 with your data
- 如何实现团队敏捷
- 第八天2017/04/17(2、❤String类的源代码)
- 全面解读HTTP Cookie
- 喵呜,又要配置环境
- oracle索引 总结
- ITK resample图像重采样
- BOS WebService 接口开发