【Python学习记录】matplotlib绘图基本配置

✨ 博客主页:小小马车夫的主页
✨ 所属专栏:Python学习记录

请添加图片描述


前言

matplotlib是python中绘图的一个库,它的数据可视化的功能十分强大,在机器学习中用的非常普遍,本文就对matplotlib绘图的基本配置作一个系统介绍。
首先,在作基本介绍之前,先看一下简单的例子,作为后续介绍的前导:

import nummpy as np
import matplotlib.pyplot as plt
X = np.arange(0, 12.1, 0.1)
Y = np.sin(X)
plt.plot(X, Y)

以下是绘图的效果:
matplotlib

1、设置颜色

plt.plot(X, Y, 'r')

说明:
r 参数, 是指颜色, 是红色red的缩写

以下是效果
matplotlib

plt.plot(X, Y, 'r-')

说明:
r- 线型为虚线

matplotllib

plt.plot(X, Y, 'r-:') 

说明:
r-: 线型为点虚线

matplotlib

能用的用法

plt.plot(X, Y, color='lime', linestyle='-')

说明:
color颜色
linestyle线型

2、设置每个点marker

plt.plot(X, Y, color='lime', linestyle='-', linewidth=2, \
        marker='v', markerfacecolor='red', markeredgecolor='orange',\
        markersize=6, markeredgewidth=2)

说明:
color 线条颜色
linestyle线条类型
linewidth线条宽度
marker 每个点形状
markerfacecolor每个点的颜色
markeredgecolor第个点边缘的颜色
markersize每个点的大小
markeredgewidth 每个点边框宽度

matplotlib

3、设置标题、X轴、Y轴文字

plt.plot(X, Y, color='lime', linestyle='', linewidth=2, \
        marker='v', markerfacecolor='red', markeredgecolor='orange',\
        markersize=6, markeredgewidth=2)
aix = plt.gca()
aix.set_title('Title', fontname='Arial', fontsize=16, weight='bold', color='red', style='italic')
aix.set_ylabel('Y Label', fontsize=12)
aix.set_xlabel('X Label', fontsize=12)

说明:
plt.gca 获取图表对象
set_title 设置主标题
set_ylabel 设置Y坐标标题
set_xlabel 设置X坐标标题

matplotlib

4、设置刻度

设置刻度要显示点

aix.set_xticks([0, 2, 5, 7, 11])

matplotlib

设置刻度指定点的标签

aix.set_xticklabels(['A', 'B', 'C', 'D', 'E'])

matplotlib

设置刻度线

aix.tick_params(axis='x', direction='out', color='blue', \
               length=10, width=1)
aix.tick_params(axis='y', direction='in', color='red', \
               length=10, width=2)

说明:
tick_params 设置刻度线
axis 取3个值:x y both, 分别代表x坐标,y坐标和xy坐标一起设置
direction 刻度线朝向,out 朝向坐标系外边,in朝向坐标系里边
color 刻度线的颜色
length 刻度线的长度
width 刻度线的宽度

matplotlib

5、同一图中画多条线、绘制图例

plt.plot(X, Y, color='lime', linestyle='', linewidth=2, \
        marker='v', markerfacecolor='red', markeredgecolor='orange',\
        markersize=6, markeredgewidth=2, label='sin1')
plt.plot(X+2, Y, label='sin2')
plt.legend(loc='best')

说明:
上述代码分别画了两条线,会显示一张图中。
label 线条的标签
legend 设置图例, loc为图例的位置

matplotlib
修改一下图例的位置

plt.legend(loc='lower left')

matplotlib

6、设置图层顺序

plt.plot(X, Y, color='lime', linestyle='', linewidth=2, \
        marker='v', markerfacecolor='red', markeredgecolor='orange',\
        markersize=6, markeredgewidth=2, label='sin1', zorder=2)
plt.plot(X+2, Y, label='sin2', zorder=1)

说明:
zorder图层顺序编号,值越小越靠上。

matplotlib

7、多个图的设置subplot

多个图显示同一个画面中,可用如下方法:

fig, ax = plt.subplots(2, 1)
ax[0].plot(X, Y, linewidth=5)
ax[1].plot(X+2, Y, linewidth=5, color='r')

说明:
subplots 创建一个包含2行1列的画布

matplotlib

8、保存图片

plt.figure(figsize=(8, 5))
plt.plot(X, Y, color='lime', linestyle='', linewidth=2, \
        marker='v', markerfacecolor='red', markeredgecolor='orange',\
        markersize=6, markeredgewidth=2, label='sin1', zorder=2)
aix = plt.gca()
aix.set_title('Title', fontname='Arial', fontsize=16, weight='bold', color='red', style='italic')
aix.set_ylabel('Y Label', fontsize=12)
aix.set_xlabel('X Label', fontsize=12)
aix.set_xticks([0, 2, 5, 7, 11])

aix.tick_params(axis='x', direction='out', color='blue', \
               length=10, width=1)
aix.tick_params(axis='y', direction='in', color='red', \
               length=10, width=2)

plt.plot(X+2, Y, label='sin2', zorder=1)
plt.legend(loc='lower left')
plt.savefig('1.png')

matplotlib

总结

以上就本文的所有内容了,简单总结一下吧。
主要介绍了matplotlib库绘图的基本设置,主要有颜色设置、点设置、标题设置、刻度设置、多个线条一个图、多个图一个画布以及保存图片等。


如果觉得有些帮助或觉得文章还不错,请关注一下博主,你的关注是我持续写作的动力。另外,如果有什么问题,可以在评论区留言,或者私信博主,博主看到后会第一时间进行回复。
【间歇性的努力和蒙混过日子,都是对之前努力的清零】
欢迎转载,转载请注明出处:https://blog.csdn.net/xxm524/article/details/128274894

  • 6
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一马途追

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值