Python编程pygal绘图实例之XY线


Posted in Python onDecember 09, 2017

安装pygal,可参阅:pip和pygal的安装实例教程

基本XY线:

import pygal
from math import cos

"""
XY线是将各个点用直线连接起来的折线图
需提供一个横纵坐标元组作为元素的列表
"""
xy_chart = pygal.XY()
xy_chart.title = 'XY Cosinus'
xy_chart.add('x = cos(y)', [(cos(x / 10.), x / 10.) for x in range(-50, 50, 5)])
xy_chart.add('y = cos(x)', [(x / 10., cos(x / 10.)) for x in range(-50, 50, 5)])
xy_chart.add('x = 1', [(1, -5), (1, 5)])
xy_chart.add('x = -1', [(-1, -5), (-1, 5)])
xy_chart.add('y = 1', [(-5, 1), (5, 1)])
xy_chart.add('y = -1', [(-5, -1), (5, -1)])
xy_chart.render_to_file('bar_chart.svg')

Python编程pygal绘图实例之XY线

散点图:

import pygal

xy_chart = pygal.XY(stroke=False)
xy_chart.title = 'Correlation'
xy_chart.add('A', [(0, 0), (.1, .2), (.3, .1), (.5, 1), (.8, .6), (1, 1.08), (1.3, 1.1), (2, 3.23), (2.43, 2)])
xy_chart.add('B', [(.1, .15), (.12, .23), (.4, .3), (.6, .4), (.21, .21), (.5, .3), (.6, .8), (.7, .8)])
xy_chart.add('C', [(.05, .01), (.13, .02), (1.5, 1.7), (1.52, 1.6), (1.8, 1.63), (1.5, 1.82), (1.7, 1.23), (2.1, 2.23), (2.3, 1.98)])
xy_chart.render_to_file('bar_chart.svg')

Python编程pygal绘图实例之XY线

日期:

你可以使用日期模块绘制与日期有关的图表

DateTime

import pygal

from datetime import datetime
datetimeline = pygal.DateTimeLine(
  x_label_rotation=35, truncate_label=-1,
  x_value_formatter=lambda dt: dt.strftime('%d, %b %Y at %I:%M:%S %p'))
datetimeline.add("Serie", [
  (datetime(2013, 1, 2, 12, 0), 300),
  (datetime(2013, 1, 12, 14, 30, 45), 412),
  (datetime(2013, 2, 2, 6), 823),
  (datetime(2013, 2, 22, 9, 45), 672)
])
datetimeline.render_to_file('bar_chart.svg')

Python编程pygal绘图实例之XY线

Date

import pygal

from datetime import date
dateline = pygal.DateLine(x_label_rotation=25)
dateline.x_labels = [
  date(2013, 1, 1),
  date(2013, 7, 1),
  date(2014, 1, 1),
  date(2014, 7, 1),
  date(2015, 1, 1),
  date(2015, 7, 1)
]
dateline.add("Serie", [
  (date(2013, 1, 2), 213),
  (date(2013, 8, 2), 281),
  (date(2014, 12, 7), 198),
  (date(2015, 3, 21), 120)
])
dateline.render_to_file('bar_chart.svg')

Python编程pygal绘图实例之XY线

Time

import pygal
from datetime import time

dateline = pygal.TimeLine(x_label_rotation=25)
dateline.add("Serie", [
  (time(), 0),
  (time(6), 5),
  (time(8, 30), 12),
  (time(11, 59, 59), 4),
  (time(18), 10),
  (time(23, 30), -1),
])
dateline.render_to_file('bar_chart.svg')

Python编程pygal绘图实例之XY线

TimeDelta

import pygal
from datetime import timedelta

dateline = pygal.TimeDeltaLine(x_label_rotation=25)
dateline.add("Serie", [
 (timedelta(), 0),
 (timedelta(seconds=6), 5),
 (timedelta(minutes=11, seconds=59), 4),
 (timedelta(days=3, microseconds=30), 12),
 (timedelta(weeks=1), 10),
])
dateline.render_to_file('bar_chart.svg')

Python编程pygal绘图实例之XY线

总结

以上就是本文关于Python编程pygal绘图实例之XY线的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
python命令行参数sys.argv使用示例
Jan 28 Python
python实现批量获取指定文件夹下的所有文件的厂商信息
Sep 28 Python
Python聚类算法之凝聚层次聚类实例分析
Nov 20 Python
Python使用tablib生成excel文件的简单实现方法
Mar 16 Python
Python中Threading用法详解
Dec 27 Python
python 使用正则表达式按照多个空格分割字符的实例
Dec 20 Python
弄懂这56个Python使用技巧(轻松掌握Python高效开发)
Sep 18 Python
python通过链接抓取网站详解
Nov 20 Python
浅谈tensorflow之内存暴涨问题
Feb 05 Python
python GUI库图形界面开发之PyQt5复选框控件QCheckBox详细使用方法与实例
Feb 28 Python
python+selenium+chrome批量文件下载并自动创建文件夹实例
Apr 27 Python
python实现简单的井字棋游戏(gui界面)
Jan 22 Python
同时安装Python2 & Python3 cmd下版本自由选择的方法
Dec 09 #Python
基于Python中capitalize()与title()的区别详解
Dec 09 #Python
Python IDLE入门简介
Dec 08 #Python
利用Python找出序列中出现最多的元素示例代码
Dec 08 #Python
Python排序搜索基本算法之归并排序实例分析
Dec 08 #Python
Python实现基于二叉树存储结构的堆排序算法示例
Dec 08 #Python
Python排序搜索基本算法之堆排序实例详解
Dec 08 #Python
You might like
初学者入门:细述PHP4的核心Zend
2006/09/05 PHP
php入门学习知识点五 关于php数组的几个基本操作
2011/07/14 PHP
PHP 提取图片img标记中的任意属性的简单实例
2013/12/10 PHP
PHP中spl_autoload_register()函数用法实例详解
2016/07/18 PHP
php mysql实现mysql_select_db选择数据库
2016/12/30 PHP
PHP框架Laravel中使用UUID实现数据分表操作示例
2018/05/30 PHP
PHP类与对象后期静态绑定操作实例详解
2018/12/20 PHP
js 字符串转换成数字的三种方法
2013/03/23 Javascript
js实现字符串的16进制编码不加密
2014/04/25 Javascript
jQuery遍历之next()、nextAll()方法使用实例
2014/11/08 Javascript
把普通对象转换成json格式的对象的简单实例
2016/07/04 Javascript
js插件dropload上拉下滑加载数据实例解析
2016/07/27 Javascript
IONIC自定义subheader的最佳解决方案
2016/09/22 Javascript
关于webuploader插件使用过程遇到的小问题
2016/11/07 Javascript
js 获取本地文件及目录的方法(推荐)
2016/11/10 Javascript
js实现登录验证码
2016/12/22 Javascript
原生JS实现 MUI导航栏透明渐变效果
2017/11/07 Javascript
微信小程序实现页面跳转传递参数(实体,对象)
2019/08/12 Javascript
JavaScript设计模式---单例模式详解【四种基本形式】
2020/05/16 Javascript
Python读写文件方法总结
2015/06/09 Python
Python中Class类用法实例分析
2015/11/12 Python
Python3.5集合及其常见运算实例详解
2019/05/01 Python
使用keras和tensorflow保存为可部署的pb格式
2020/05/25 Python
在Mac中配置Python虚拟环境过程解析
2020/06/22 Python
Booking.com亚太地区:Booking.com APAC
2020/02/07 全球购物
宝信软件JAVA工程师面试经历
2012/08/19 面试题
什么是JNDI的上下文?如何初始化JNDI上下文
2012/03/10 面试题
财务工作个人求职的自我评价
2013/12/19 职场文书
小学中秋节活动方案
2014/02/06 职场文书
群众路线教育实践活动批评与自我批评
2014/09/15 职场文书
领导班子个人对照检查剖析材料
2014/09/29 职场文书
2014年卫生院工作总结
2014/12/03 职场文书
工作年限证明模板
2015/06/15 职场文书
致男子1500米运动员的广播稿
2019/11/08 职场文书
用python删除文件夹中的重复图片(图片去重)
2021/05/12 Python
电脑开机弹出documents文件夹怎么回事?弹出documents文件夹解决方法
2022/04/08 数码科技