python绘图库——Matplotlib

matplotlib是python的一个强大的绘图工具,能将数据可视化,更直观的呈现数据。

matplotlib的功能繁多,在此只介绍其基本功能。

导入

import matplotlib.pyplot as pltfrom matplotlib import font_manager

折线图

​​​​​​​

import randomx = range(100)y = [random.random() for i in x]plt.plot(x, y)  # x,y一一对应、长度相同plt.show()

图片

plt.plot(x)  # 当只传入一组数据时,会以传入数据为y轴,以传入数据的索引数组为x轴数据plt.show()

图片

font = font_manager.FontProperties(fname='示例文件路径')  # 设置一个字体plt.plot(x, y, label='示例图线', linewidth=3, linestyle='-.')# linestyle,设置线条风格,(实线,'-')(点划线,'-.') (虚线,'--')(点虚线,':') (无线条,'')# linewidth, 设置线条粗细# alpha, 线条透明度plt.legend(prop=font, loc='upper right')  # 显示图例plt.show()

图片

散点图

​​​​​​​

plt.scatter(x, y)plt.show()

图片

plt.scatter(x, y, color='cyan')  # 每个绘图函数都有color属性plt.show()

图片

条形图

y2 = [random.randint(1,10)for i in x]plt.bar(x, y2)plt.show()

图片

# plt.bar(x, height, width=0.8, bottom=0)# 传入的x表示每一个长条的位置,y2表示表示高度,width默认为0.8,bottom表示y轴的起始刻度plt.bar(x, y2, width=0.5, bottom=5)plt.show()

图片

可以发现,y2中的数据只表示条的高度,并不代表坐标。

​​​​​​​

plt.barh(x,y2)  # 绘制横形条形图plt.show()

图片

直方图

y3 = [random.randint(1, 100) for i in range(10000)]plt.hist(y3, 10)

图片

# plt.hist(x, bins, rwidth=None, density=False)# x为数据样本# bins作为数据区间划分的依据,可为int,sequence# 当bins为整数时,表示划分的区间数量,自动等分# 当bins为一sequence时,sequence中每相邻的两个数作为区间# 当为density传入True时,绘制频率分布直方图,否则为频数分布直方图# rwidth为柱子之间的距离

轴与标签

plt.plot(x, x)plt.xlabel('x轴', size=30, fontproperties=font)  # 设置x轴标签plt.ylabel('y轴', size=30, fontproperties=font)  # 设置y轴标签plt.title('示例图表', size=50, fontproperties=font) #设置图表标题plt.xticks(range(0, 101, 10), [f'{i}分' for i in range(0, 101, 10)],rotation=-45,  fontproperties=font)# plt.xticks(数组,名称数据, rotation= ) x轴刻度设置# 数值数据决定刻度的位置,名称数据决定刻度处的文字,名称与数值一一对应, rotation参数为文字逆时针旋转的度数plt.show()

图片

网格线

​​​​​​​

plt.grid()# 参数有linewidth,linestyle,alpha等线参数plt.show()

图片

plt.show():Display all open figures.

会展示上个show之后的所有被定义的图形

y1 = [ 2*i for i in x]y2 = xplt.plot(x, y1)plt.plot(x, y2)plt.grid()plt.show()

图片

matplotlib的功能远远不止上述所说的内容,更多功能可以参见官方文档。

python绘图库——matplotlib

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值