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 json encode datetime类型
Dec 28 Python
python多线程编程方式分析示例详解
Dec 06 Python
Python 中 list 的各项操作技巧
Apr 13 Python
Django中使用celery完成异步任务的示例代码
Jan 23 Python
python语音识别实践之百度语音API
Aug 30 Python
Python读取指定日期邮件的实例
Feb 01 Python
Python根据当前日期取去年同星期日期
Apr 14 Python
Python3.5基础之函数的定义与使用实例详解【参数、作用域、递归、重载等】
Apr 26 Python
python实现美团订单推送到测试环境,提供便利操作示例
Aug 09 Python
python实现视频压缩功能
Dec 18 Python
PyTorch 如何设置随机数种子使结果可复现
May 12 Python
PyTorch 实现L2正则化以及Dropout的操作
May 27 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
PHP对象转换为数组函数(递归方法)
2012/02/04 PHP
ThinkPHP实现多数据库连接的解决方法
2014/07/01 PHP
php中的curl_multi系列函数使用例子
2014/07/29 PHP
php数组键名技巧小结
2015/02/17 PHP
php实现约瑟夫问题的方法小结
2015/03/23 PHP
PHP7 新增功能
2021/03/09 PHP
Centos7.7 64位利用本地完整安装包安装lnmp/lamp套件教程
2021/03/09 Servers
用于节点操作的API,颠覆原生操作HTML DOM节点的API
2010/12/11 Javascript
node.js中的buffer.copy方法使用说明
2014/12/14 Javascript
js实现温度计时间样式代码分享
2015/08/21 Javascript
微信支付如何实现内置浏览器的H5页面支付
2015/09/25 Javascript
原生JavaScript实现的简单省市县三级联动功能示例
2017/05/27 Javascript
JavaScript该如何学习 怎样轻松学习JavaScript
2017/06/12 Javascript
react-native 封装选择弹出框示例(试用ios&android)
2017/07/11 Javascript
详解React项目的服务端渲染改造(koa2+webpack3.11)
2018/03/19 Javascript
对layer弹出框中icon数字参数的说明介绍
2019/09/04 Javascript
vue中的v-model原理,与组件自定义v-model详解
2020/08/04 Javascript
django+js+ajax实现刷新页面的方法
2017/05/22 Python
Windows下Anaconda的安装和简单使用方法
2018/01/04 Python
详解Python 协程的详细用法使用和例子
2018/06/15 Python
使用python将请求的requests headers参数格式化方法
2019/01/02 Python
python向字符串中添加元素的实例方法
2019/06/28 Python
django queryset 去重 .distinct()说明
2020/05/19 Python
基于Python词云分析政府工作报告关键词
2020/06/02 Python
详解用 python-docx 创建浮动图片
2021/01/24 Python
草莓巧克力:Shari’s Berries
2017/02/07 全球购物
SQL语言面试题
2013/08/27 面试题
多媒体编辑专业毕业生求职信
2014/06/13 职场文书
给医院的感谢信
2015/01/21 职场文书
六一儿童节开幕词
2015/01/29 职场文书
2015年党小组工作总结
2015/05/26 职场文书
百万英镑观后感
2015/06/09 职场文书
运动会运动员赞词
2015/07/22 职场文书
Django migrate报错的解决方案
2021/05/20 Python
Python实现排序方法常见的四种
2021/07/15 Python
python中出现invalid syntax报错的几种原因分析
2022/02/12 Python