使用Python绘制图表大全总结

yipeiwu_com6年前Python基础

在使用Python绘制图表前,我们需要先安装两个库文件numpy和matplotlib。

Numpy是Python开源的数值计算扩展,可用来存储和处理大型矩阵,比Python自身数据结构要高效;matplotlib是一个Python的图像框架,使用其绘制出来的图形效果和MATLAB下绘制的图形类似。

下面我通过一些简单的代码介绍如何使用 Python绘图。

一、图形绘制

直方图

importmatplotlib.pyplotasplt

importnumpyasnp

mu=100

sigma=20

x=mu+sigma*np.random.randn(20000)# 样本数量

plt.hist(x,bins=100,color='green',normed=True)# bins显示有几个直方,normed是否对数据进行标准化

plt.show()

条形图

importmatplotlib.pyplotasplt

importnumpyasnp

y=[20,10,30,25,15]

index=np.arange(5)

plt.bar(left=index,height=y,color='green',width=0.5)

plt.show()

折线图

importmatplotlib.pyplotasplt

importnumpyasnp

x=np.linspace(-10,10,100)

y=x**3

plt.plot(x,y,linestyle='--',color='green',marker='<')

plt.show()

散点图

importmatplotlib.pyplotasplt

importnumpyasnp

x=np.random.randn(1000)

y=x+np.random.randn(1000)*0.5

plt.scatter(x,y,s=5,marker='<')# s表示面积,marker表示图形

plt.show()

饼状图

importmatplotlib.pyplotasplt

importnumpyasnp

labels='A','B','C','D'

fracs=[15,30,45,10]

plt.axes(aspect=1)#使x y轴比例相同

explode=[0,0.05,0,0]# 突出某一部分区域

plt.pie(x=fracs,labels=labels,autopct='%.0f%%',explode=explode)#autopct显示百分比

plt.show()

箱形图

主要用于显示数据的分散情况。图形分为上边缘、上四分位数、中位数、下四分位数、下边缘。外面的点时异常值

importmatplotlib.pyplotasplt

importnumpyasnp

np.random.seed(100)

data=np.random.normal(size=(1000,4),loc=0,scale=1)

labels=['A','B','C','D']

plt.boxplot(data,labels=labels)

plt.show()

二、图像的调整

1、23种点形状

"."point","pixel"o"circle"v"triangle_down

"^"triangle_up"<"triangle_left">"triangle_right"1"tri_down

"2"tri_up"3"tri_left"4"tri_right"8"octagon

"s"square"p"pentagon"*"star"h"hexagon1"H"hexagon2

"+"plus"x"x"D"diamond"d"thin_diamond

2、8种內建默认颜色的缩写

b:blueg:greenr:redc:cyan

m:magentay:yellowk:blackw:white

3、4种线性

- 实线 --虚线 -.点划线 :点线

4、一张图上绘制子图

importmatplotlib.pyplotasplt

importnumpyasnp

x=np.arange(1,100)

plt.subplot(221)#2行2列第1个图

plt.plot(x,x)

plt.subplot(222)

plt.plot(x,-x)

plt.subplot(223)

plt.plot(x,x*x)

plt.subplot(224)

plt.plot(x,np.log(x))

plt.show()

5、生成网格

importmatplotlib.pyplotasplt

importnumpyasnp

y=np.arange(1,5)

plt.plot(y,y*2)

plt.grid(True,color='g',linestyle='--',linewidth='1')

plt.show()

6、生成图例

importmatplotlib.pyplotasplt

importnumpyasnp

x=np.arange(1,11,1)

plt.plot(x,x*2)

plt.plot(x,x*3)

plt.plot(x,x*4)

plt.legend(['Normal','Fast','Faster'])

plt.show()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

在Python程序中实现分布式进程的教程

在Python程序中实现分布式进程的教程

在Thread和Process中,应当优选Process,因为Process更稳定,而且,Process可以分布到多台机器上,而Thread最多只能分布到同一台机器的多个CPU上。 Py...

基于python实现学生管理系统

本文为大家分享了python实现学生管理系统的具体代码,供大家参考,具体内容如下 1.0版本学生管理系统 ''' 1.添加学员 2.修改学员 3.查询学员 4.删除学员 0...

python3实现单目标粒子群算法

python3实现单目标粒子群算法

本文实例为大家分享了python3单目标粒子群算法的具体代码,供大家参考,具体内容如下 关于PSO的基本知识......就说一下算法流程 1) 初始化粒子群;   ...

Python基于Logistic回归建模计算某银行在降低贷款拖欠率的数据示例

Python基于Logistic回归建模计算某银行在降低贷款拖欠率的数据示例

本文实例讲述了Python基于Logistic回归建模计算某银行在降低贷款拖欠率的数据。分享给大家供大家参考,具体如下: 一、Logistic回归模型:   二、Logisti...

基于python进行抽样分布描述及实践详解

基于python进行抽样分布描述及实践详解

本次选取泰坦尼克号的数据,利用python进行抽样分布描述及实践。 备注:数据集的原始数据是泰坦尼克号的数据,本次截取了其中的一部分数据进行学习。Age:年龄,指登船者的年龄。Fare...