1. 绘制直方图

绘制一个直方图分析掷骰子结果

先创建一个骰子类,然后创建一个实例,得出掷骰子1000次的结果

from random import randint
import pygalclass Die():def __init__(self,num_sides=6):self.num_sides=num_sidesdef roll(self):#返回一个位于1和骰子面数之间的随机值return randint(1,self.num_sides)die=Die()results=[]
for roll_num in range(1000):result=die.roll()results.append(result)#分析结果
frequencies=[]
for value in range(1,die.num_sides+1):frequency=results.count(value)frequencies.append(frequency)

然后用一个条形图可视化显示数据

#创建条形图实例
hist=pygal.Bar()#设置标题
hist.title='Results of rolling one D6 1000 times'
#x轴标签
hist.x_labels=['1','2','3','4','5','6']
hist.x_title='Result'
hist.y_title='Frequency of Result'hist.add('D6',frequencies)
hist.render_to_file('die_visual.svg')

将这个图表渲染为一个die_visual.svg文件,生成的文件与代码位于同一目录下,在浏览器打开如下

同时掷两个八面骰子

die1=Die(8)
dei2=Die(8)results=[]
for roll_num in range(1000):result=die1.roll()+dei2.roll()results.append(result)#分析结果
frequencies=[]
sum_sides=die1.num_sides+dei2.num_sides
for value in range(2,sum_sides+1):frequency=results.count(value)frequencies.append(frequency)#创建条形图实例
hist=pygal.Bar()#设置标题
hist.title='Results of rolling one D6 1000 times'
#x轴标签
hist.x_labels=[x for x in range(2,17)]
hist.x_title='Result'
hist.y_title='Frequency of Result'hist.add('D6',frequencies)
hist.render_to_file('die_visual.svg')

2.绘制世界人口地图:JSON格式

import json
from pygal_maps_world.i18n import COUNTRIES
import pygal_maps_world.maps#返回两位数国别码,Pygal中地图是根据国别码绘图的
def get_country_code(country_name):for code,name in COUNTRIES.items():if name ==country_name:return codereturn Nonefilename='population_data.json'
# json.load() 将数据转换为Python能够处理的格式
with open(filename) as f:pop_data=json.load(f)cc_populations={}
#得到国别码和对应人口数量并存储在字典中
for pop_dict in pop_data:if pop_dict['Year']=='2010':country_name=pop_dict['Country Name']country_population=int(float(pop_dict['Value']))code=get_country_code(country_name)if code:cc_populations[code]=country_population#创建一个实例
wm=pygal_maps_world.maps.World()
#设置标题
wm.title='World Population in 2010, by Country'wm.add('2010',cc_populations)
wm.render_to_file('americas.svg')

Python中Pygal库的简单使用相关推荐

  1. 入门小远学爬虫(二)(四)简单GET型网页爬虫实战——“前程无忧”爬虫岗位信息的爬取之正则概念以及Python中re库的简单应用

    文章目录 前言 一.正则表达式是什么? 二.正则表达式语法 1.简介 2.干货分享 三.re库 1.安装 2.用法 四.终于进入正题 小结 前言 这是本系列第一个实战项目的第四课,有关前三课相关的内容 ...

  2. Python中mechanize库的简单使用说明

    该库与urllib.urllib2类似,用一个简单的例子说明它的使用: #!/usr/bin/env/ python #coding=utf-8 import mechanize import coo ...

  3. python中的turtle如何运行_python中turtle库的简单使用教程

    python的turtle库的简单使用 Python的turtle库是一个直观有趣的图形绘制函数库,是python的标准库之一. 一.绘图坐标体系 turtle库绘制图形的基本框架:通过一个小海龟在坐 ...

  4. python tkinter库、添加gui界面_使用Python中tkinter库简单gui界面制作及打包成exe的操作方法(二)...

    使用Python中tkinter库简单gui界面制作及打包成exe的操作方法(二),创建一个,界面,布局,文件,路径 使用Python中tkinter库简单gui界面制作及打包成exe的操作方法(二) ...

  5. python opencv创建图像_使用Python中OpenCV库创建一幅图片的RGB通道图片

    我们知道,在使用PhotoShop进行图片的抠取.创建和存储选区.存储图像的色彩资料等复杂操作时,经常会用到一个功能,那就是"RGB"通道,它能从三原色角度对一幅图片进行精准处理. ...

  6. python中requests库的用途-数据爬虫(三):python中requests库使用方法详解

    有些网站访问时必须带有浏览器等信息,如果不传入headers就会报错,如下 使用 Requests 模块,上传文件也是如此简单的,文件的类型会自动进行处理: 因为12306有一个错误证书,我们那它的网 ...

  7. python中requests库的用途-python中requests库session对象的妙用详解

    在进行接口测试的时候,我们会调用多个接口发出多个请求,在这些请求中有时候需要保持一些共用的数据,例如cookies信息. 妙用1 requests库的session对象能够帮我们跨请求保持某些参数,也 ...

  8. python docx库安装_详解python中docx库的安装过程

    python中docx库的简介 python-docx包,这是一个很强大的包,可以用来创建docx文档,包含段落.分页符.表格.图片.标题.样式等几乎所有的word文档中能常用的功能都包含了,这个包的 ...

  9. 用Python中的Numpy实现简单高效的扑克牌API(附代码)

    用Python中的Numpy实现简单高效的扑克牌API 扑克牌可以用字典或者列表来表示,但是这样的话会浪费很多的空间.因此,本项目将使用Numpy来实现,这样的话能保证性能的情况下减少存储成本. 一般 ...

最新文章

  1. MyEclipse数据库连接配置(以Oracle为例)
  2. 更新:让UpdatePanel支持上传文件
  3. 衡量发动机性能的重要指标—升功率
  4. 由中行IBM大型机宕机谈银行系统运维
  5. Servlet实现图片读取显示
  6. linux内核镜像的分层,Docker 入门教程:镜像分层
  7. 【python 图像识别】python 身份证号码识别
  8. 宝塔linux面板mysql数据库误删恢复过程
  9. java运行环境简称_java程序的运行环境简称为什么?
  10. android qq输入法,Android版QQ输入法:滑动输入成最大亮点
  11. HDFS配置之NN-SNN-DN
  12. 01.电脑黑客基本知识
  13. 实践项目一 项目开发团队分配管理
  14. 一个男网友娶到一个女网友后在洞房发生的事情
  15. 1278 相离的圆(任务调度,贪心)
  16. 替换加密(恺撒加密法)
  17. MATLAB隐函数绘图 使用隐函数作二维图 使用隐函数作三维图
  18. switch c语言格式,switch语句格式是什么?
  19. 从小白到大师-用OpenSSH在不同主机上传输文件
  20. 用istioctl看istio生成的envoy xds配置(一)

热门文章

  1. 中国/玩具鸭舰队/漂流15年 今夏将抵英国
  2. 管理者应该怎么面对员工的顶撞
  3. 保姆级教程:如何搭建一个专属云平台?
  4. 【板栗糖GIS】在测绘项目中——比例尺和分辨率的区别
  5. IUSR和IIS_IUSRS和区别
  6. [摘录]第二部分 战略决策(3)
  7. useradd命令的一些基本操作
  8. 射频电路的线性指标与测试方法
  9. 干货笔记,数据仓库工具箱(附电子书下载)
  10. python海龟绘图(turtle)手绘【玫瑰、时钟、哆啦A梦、小猪佩奇、史迪仔】