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使用Flask框架同时上传多个文件的方法
Mar 21 Python
Python中使用partial改变方法默认参数实例
Apr 28 Python
Python使用multiprocessing实现一个最简单的分布式作业调度系统
Mar 14 Python
使用Python监控文件内容变化代码实例
Jun 04 Python
Django unittest 设置跳过某些case的方法
Dec 26 Python
PythonWeb项目Django部署在Ubuntu18.04腾讯云主机上
Apr 01 Python
将pip源更换到国内镜像的详细步骤
Apr 07 Python
Python中asyncio模块的深入讲解
Jun 10 Python
python 中Arduino串口传输数据到电脑并保存至excel表格
Oct 14 Python
利用Tensorflow构建和训练自己的CNN来做简单的验证码识别方式
Jan 20 Python
Python如何把不同类型数据的json序列化
Apr 30 Python
Python3.10的一些新特性原理分析
Sep 15 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
MayFish PHP的MVC架构的开发框架
2009/08/13 PHP
php自定义函数call_user_func和call_user_func_array详解
2011/07/14 PHP
php中Smarty模板初体验
2011/08/08 PHP
ueditor 1.2.6 使用方法说明
2013/07/24 PHP
PHP信号量基本用法实例详解
2016/02/12 PHP
mouse_on_title.js
2006/08/25 Javascript
javascript showModalDialog 多层模态窗口实现页面提交及刷新的代码
2009/11/28 Javascript
NodeJS url验证(url-valid)的使用方法
2013/11/18 NodeJs
9款2014最热门jQuery实用特效推荐
2014/12/07 Javascript
jQuery实现简单下拉导航效果
2015/09/07 Javascript
Javascript自执行匿名函数(function() { })()的原理浅析
2016/05/15 Javascript
JS上传图片预览插件制作(兼容到IE6)
2016/08/07 Javascript
Vue2.0系列之过滤器的使用
2018/03/01 Javascript
微信小程序自定义对话框弹出和隐藏动画
2018/07/19 Javascript
vue使用nprogress加载路由进度条的方法
2020/06/04 Javascript
springboot+vue实现文件上传下载
2020/11/17 Vue.js
Django 如何获取前端发送的头文件详解(推荐)
2017/08/15 Python
Python 基础教程之str和repr的详解
2017/08/20 Python
Python实现获取nginx服务器ip及流量统计信息功能示例
2018/05/18 Python
利用Python写一个爬妹子的爬虫
2018/06/08 Python
python使用tcp实现局域网内文件传输
2020/03/20 Python
详解Python 爬取13个旅游城市,告诉你五一大家最爱去哪玩?
2019/05/07 Python
Python整数与Numpy数据溢出问题解决
2019/09/11 Python
Python函数参数类型及排序原理总结
2019/12/19 Python
基于python实现地址和经纬度转换
2020/05/19 Python
Python批量修改xml的坐标值全部转为整数的实例代码
2020/11/26 Python
css3 transform导致子元素固定定位变成绝对定位的方法
2020/03/06 HTML / CSS
html5使用window.postMessage进行跨域实现数据交互的一次实战
2021/02/24 HTML / CSS
工商管理本科毕业生求职信范文
2013/10/05 职场文书
大学毕业感言一句话
2014/02/06 职场文书
护理专科毕业生自荐书范文
2014/02/19 职场文书
感恩祖国演讲稿
2014/09/09 职场文书
分居协议书范本
2014/11/03 职场文书
2016高校自主招生自荐信范文
2016/01/28 职场文书
SQL Server作业失败:无法确定所有者是否有服务器访问权限的解决方法
2021/06/30 SQL Server
Linux下搭建SFTP服务器的命令详解
2022/06/25 Servers