程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

*args和**kwargs(0)

debug(0)

标签  

set(0)

三元运算符(0)

日期归档  

2022-02(4)

2022-03(3)

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

发布于2023-01-21 10:28     阅读(388)     评论(0)     点赞(30)     收藏(4)


✨ 博客主页:小小马车夫的主页
✨ 所属专栏: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

原文链接:https://blog.csdn.net/xxm524/article/details/128276525



所属网站分类: 技术文章 > 博客

作者:慧雅

链接:https://www.pythonheidong.com/blog/article/1885279/4969d0ce0b6af406a6cc/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

30 0
收藏该文
已收藏

评论内容:(最多支持255个字符)