栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python数据可视化编程实战_python数据可视化优秀案例?

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python数据可视化编程实战_python数据可视化优秀案例?

15.1生成数据

matplotlib:是一个数学绘图库,使用它可以制作简单的图标。

pygal包:专注于生成适合在数字设备上显示的图标。通过使用pygal,可以在与图表交互时突出元素以及调整大小,还可以轻松调整整个图表的尺寸。pygal我自己的理解是python graphics adapt library,即python图形适配器。

这两个部分安装就不叙述了,书上有的。安装后在解释器中运行:

import matplotlib

如果没有任何出错信息,说明安装正确。

另外,要查看由matplotlib制作的各种图表,请访问:https://matplotlib.org/示例的画廊。单击画廊中的图表,就可以查看用于生成图表的代码。

15.2 绘制简单的折线图

#导入pyplot,并指定了别名plt,避免反复键入pyplot
import matplotlib.pyplot as plt
#
squares = [1,4,9,16,25,36,49]
plt.plot(squares)
plt.show()

注意:我自己实践,可以吧import matplot.pyplot 写成如下形式

from matplotlib import pyplot

运行后,得到如下图像 

15.2.1修改标签文字和线条粗细

上图中的图标标签太小,线条太细,下面自己定制。

import matplotlib.pyplot as plt

squares = [1,4,9,16,25,36,49]
#linewidth决定了plot画的线条的粗细
plt.plot(squares,linewidth=5)

#设置图标标题,并加上标签
plt.title("Squares Numbers",fontsize=24)
plt.xlabel("Value:",fontsize=14) #加上x轴标签,字体14
plt.ylabel("Square of Value:",fontsize=14) #给y轴加上标签,字体14

#设置刻度标记的大小(也就是坐标轴上数字标记的大小)
plt.tick_params(axis='both',labelsize=14)
plt.show()


 

15.2.2矫正图形

图形绘制以后,我们发现没有正确地绘制数据:折线图的终点指出6的平方为49,下面来修复这个问题。

当你向plot提供一系列的数字时,它假设第一个数据点对应的x坐标纸为0,但我们的第一个点对应的值x为1,为了改变这种默认的行为,我们可以给plot()同时提供输入值和输出值:

...snip...
inputvalues = [1,2,3,4,5,6,7]
squares = [1,4,9,16,25,36,49]
#linewidth决定了plot画的线条的粗细
plt.plot(inputvalues,squares,linewidth=5)   #同时提供输入值和输出值
...snip...

plt还可以指定更多的实际参数。后路将会学习到。

总结(仿照mysql语句语法格式,[]内部分是可以省略的部分),有的时候[]代表一个列表,大家可以自己尝试运行代码进行鉴别:

(1)导入库下面的方法
 

import matplotlib.pyplot as plt

或者

from matplotlib import pyplot as plt

(2)画图函数

plt.plot(inputvalues,outputvalues,line_width=NUM)

   plt.scatter(xvalues,yvalues,s=SQUARevalUES)表示画散点图,s代表每个点内由多少个像素组成,

这里面有个edgecolor表示有没有轮廓,默认有轮廓,但是我试了下,指定edgecolor='none'后,效果完全一样的。

形如参数c='red',表示指定颜色的参数。对plot和scatter都是适用的。c也可以用rgb颜色模式指定,

例如:c=(0,0,0.2),当值越大,颜色越深,值越小,颜色越淡。

#下面plot函数内的[]不是可省略的意思,是指的一个列表

(3)设置标题,x轴,y轴标签,下面三个函数参数设置方法一致

plt.title("title_contents",fontsize=NUM)

plt.xlabel(...)

plt.ylabel(...)

(4)设置坐标轴刻度大小的函数

plt.tick_params(axis='both',labelsize=NUM)

(5)指定x和y坐标范围(xmaximum和ymuximum分别是x和y坐标的最大值)

plt.axis([0,xmaximum,0,ymaximum])    

plt.plot([xvalues_list],y_values,line_width=WIDTH_VALUE),line_width 表示线的宽度是多少像素

(7)显示函数

plt.show()  显示画的图形并且结束程序

plt.savefig('PICTURE_NAME',bbox_inches='tight'),第一个参数表示图像名称,第二个参数表示裁剪多余的部分,tight表示紧身的,代表将裁剪多余的部分

注意:bbox_inches='tight'只是删除图形周围的所有额外空白区域,它在渲染完成后并未实际重新排列图形中的任何内容。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/783039.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号