Python数据可视化:用matplotlib库绘制图表

一、绘制直方图 

使用pyplot的hist()函数可以快速绘制直方图,hist()函数的语法格式如下:

hist(x,bins=None, rang=None, density=None, weight=None, cumulative=False, bottom=None, histtype='bar', align='mid', orientation='vertical', rwidth=None, log=False, label=None,stacked=False, normed=None, * , data=None, **kwargs)

该函数常用参数的含义如下:

  • x: 表示x轴的数据,可以为单个数组或多个数组的序列。
  • bins:表示矩形条的个数,默认为10。
  • range:表示数据的范围。若没有提供range参数的值,则数据范围为(x.min(), x.max())。
  • cumulative:表示是否计算累计频数或频率。
  • histtype:表示直方图的类型,支持'bar'、'barstacked'、'step'、'stepfilled'四种取值,其中'bar'为默认值,代表传统的直方图;'barstacked'代表堆积直方图;'step'代表未填充的线条直方图;'stepfilled'代表填充的线条直方图。
  • align:表示矩形条边界的对齐方式,可设置为'left'、'mid'或'right',默认为'mid'。
  • orientation:表示矩形条的摆放方式,默认为'vertical',即垂直方向。

  • rwidth:表示矩形条宽度的百分比,默认为0.若histtype的值为'step'或'stepfilled',则直接忽略rwidth参数的值。

  • stacked:表示是否将多个矩形条以堆积形式摆放。

使用hist()函数绘制直方图: 

import numpy as np
import matplotlib.pyplot as plt#导入模块
scores = np.random.randint(0,100,50)#准备五十个随机测试数据
plt.hist(scores,bins=8,histtype='stepfilled')#绘制直方图
plt.show()

代码运行结果: 

二、绘制饼图 

 使用pyplot的pie()函数可以快速绘制饼图或圆环图,pie()函数的语法格式如下:

pie(x, explode=None, labels=None, autopct=None, petdistance=0.6, shadow=False, shadow=False, labeldistance=1.1, startangle=None, radius=None, counterclock=True, wedgeprops=None, textprops=None, center=(0, 0), frame=False, rotatelabels=False, *, data=None)

该函数常用参数含义如下:

  • x:表示扇形或楔形的数据。
  • explode:表示扇形或楔形离开圆心的距离。
  • labels:表示扇形或楔形对应的标签文本。
  • autopct:表示控制扇形或楔形的数值显示的字符串,可通过格式字符串指定小数点后的位数。
  • pctdistance:表示扇形或楔形对应的数据标签距离圆心的比例,默认值为0.6。
  • shadow:表示是否显示阴影。
  • labeldistance:表示标签文本的绘制位置(相对于半径的比例),默认为1.1。
  • startance:表示起始绘制角度,默认从x轴的正方向逆时针绘制。
  • radius:表示扇形或楔形的半径。
  • wedgeprops:表示控制扇形或楔形属性的字典。例如,通过wedgeprops={'width':0.7}将楔形的宽度 设为0.7。
  • textprops:表示控制图表中文本属性的字典。
  • center:表示图表的中心点位置,默认为(0,0)。
  • frame:表示是否显示图框。

使用pie()函数绘制饼图:

import numpy as np
import matplotlib.pyplot as plt#导入模块
data=np.array([200,300,500,150,420,360])#准备数据
pie_labels=np.array(['A','B','C','D','E','F'])#设置标签
plt.pie(data,radius=1.5,labels=pie_labels,autopct='%3.1f%%')
#绘制饼图:半径为1.5,数值保留1位小数
plt.show()

代码运行结果:

三、绘制散点图

使用pyplot的scatter()函数可快速绘制散点图,scatter()函数的语法格式如下:

scatter(x, y, s=None, c=None, marker=None, cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, verts=None, edgecolors=None, *, plotnonfinite=False, data=None, **kwargs)

该函数常用参数的含义如下:

  • x,y:表示数据点的位置。
  • s:表示数据点的大小。
  • c:表示数据点的颜色。
  • marker:表示数据点的样式,默认为圆形。
  • cmap:表示数据点的颜色映射表,仅当参数c为浮点数组时才使用。
  • norm:表示数据亮度,可以取值为0~1。
  • vmin,vmax:表示亮度的最小值和最大值。若传入了norm参数,则忽略vmin和vmax参数。
  • alpha:表示透明度,可以取值为0~1。
  • linewidths:表示数据点边缘的宽度。
  • edgecolors:表示数据点边缘的颜色。

使用scatter()函数绘制散点图:

import numpy as np
import matplotlib.pyplot as plt#导入模块
num=50 #随机五十个数
x= np.random.rand(num)
y= np.random.rand(num)
plt.scatter(x,y)#绘制图表
plt.show()

代码运行结果如下:

 四、绘制误差棒图

使用pyplot的errorbar()函数可以快速绘制误差棒图,该函数的语法格式如下:

errorbar(x, y, yerr=None, xerr=None, fmt=' ', ecolor=None, elinewidth=None, capsize=None, barsabove=False, lolims=False, uplims=False, xlolims=False, xuplims=False, errorevery=1, capthick=None, *, data=None, **kwargs)

该函数常用参数的含义如下:

  • x,y:表示数据点的位置。
  • xerr,yerr:表示数据的误差范围。
  • fmt:表示数据点的标记样式和数据点之间连接线的样式。
  • ecolor:表示误差棒的线条颜色。
  • elinewidth:表示误差棒的线条宽度。
  • capsize:表示误差棒边界横杆的大小。
  • capthick:表示误差棒边界横杆的厚度。

使用errorbar()函数绘制误差棒图:

import numpy as np
import matplotlib.pyplot as plt  #导入模块
x=np.arange(5) #准备数据
y=(25,32,34,20,25)
y_offset = (3,5,2,3,3)  #设置误差值
plt.errorbar(x,y,yerr=y_offset,capsize=3,capthick=2)
plt.show()

 代码运行结果如下:

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值