python—matplotlib库系列学习(一):plot函数(包含title、xlabel、ylabel、legend函数)

这篇具有很好参考价值的文章主要介绍了python—matplotlib库系列学习(一):plot函数(包含title、xlabel、ylabel、legend函数)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

引言

plot函数

(1)简单的举例说明

(2)参数说明

         1. marker(标记样式字符串)

         2. color(颜色)

         3. linestyle 和 linewidth

(3)一个简便的写法

(4)一个图上画多条线

(5)通用的图形的美化补充

        1. 标题

        2. x轴 - y轴命名

        3. 图例 

总结


系列文章学习:

python—matplotlib库系列学习(一):plot函数


引言

        在学习时,我主要了参考了下面的网站,大家也可以自行去学习!而且这篇文章跟偏向于新手去进行学习,大佬看这个文章的内容肯定都是小儿科啦~~,当然这篇文章也比较方便我自己后续画图的时候直接就找参数什么的,算是一个比较系统的文章啦。希望可以帮到大家,有什么问题还请多多批评指正,我也是在不断进步的。

        文章的内容可能比较多,大家依据目录可以更好的找到想要的,如有转载,请表明出处,谢谢~

         作为一个系列文章,我也是会不断更新的。不然一次性要写太多啦,部分函数会随着后续的更新补充进来。

matplotlib — Matplotlib 3.7.1 documentationhttps://matplotlib.org/stable/api/matplotlib_configuration_api.html

plot函数

(1)简单的举例说明

        我们先看一个简单的代码:

import matplotlib.pyplot as plt
plt.plot([1,2])
plt.show()

plt.ylabel,python--matplotlib库学习,matplotlib,学习,python,pycharm

        这画出了一个非常简单的图像,注意里面的[1,2]代表的是纵坐标从1到2,所以实际上plot函数中只需要一个y的参数就可以画图了。

        那我们赋予了y坐标,这个x坐标是怎么确定的呢?大家观察可以发现x轴是从0开始,数组中有两个数,所以到了1。我们在举个例子,假如数组里面有8个数:

import matplotlib.pyplot as plt
plt.plot([1,2,5,10,19,56,64,80])
plt.show()

plt.ylabel,python--matplotlib库学习,matplotlib,学习,python,pycharm

        我们发现x轴确实是按照数组中元素的个数从0开始,当然如果想自己定义x轴的坐标,我们在前面加上就行,前面的参数代表x轴,后面的参数代表y轴

import matplotlib.pyplot as plt
plt.plot([1,2,3,4],[1,2,3,8])
plt.show()

plt.ylabel,python--matplotlib库学习,matplotlib,学习,python,pycharm

         但是这么一个图也太丑了,我们可以为其增加各种参数来美化完善我们的图形~ 如下代码:

import matplotlib.pyplot as plt
plt.plot([1,2,3,4],[1,2,3,8],color='green', marker='o', linestyle='dashed',
     linewidth=2, markersize=12)
plt.show()

plt.ylabel,python--matplotlib库学习,matplotlib,学习,python,pycharm

        是不是感觉比上一次要好看多了,在这里我加了很多plot函数包含的参数,我接下来将一一给大家讲解说明,而且也有很多参数对于matplotlib中其他绘图函数也是适用的。

(2)参数说明

        除了上面提到的x,y之外,比较常用的参数有marker、color、linestyle等,我们一个一个来说

import matplotlib.pyplot as plt
x = [1,2,3]
y = [1,2,3]
plt.plot(x,y, marker='o',color='r')
plt.show()

plt.ylabel,python--matplotlib库学习,matplotlib,学习,python,pycharm

 1. marker(标记样式字符串)

        他可以定义每个点的样式,比如上述的'o'表示的就是一个圆,它还有很多其他样式:

'.'

point marker(点标识)

','

pixel marker(像素标识)

'o'

circle marker(圆标识)

'v'

triangle_down marker(倒三角形标识)

'^'

triangle_up marker(正三角形标识)

'<'

triangle_left marker(左三角形标识)

'>'

triangle_right marker(右三角形标识)

'1'

tri_down marker

'2'

tri_up marker

'3'

tri_left marker

'4'

tri_right marker

'8'

octagon marker

's'

square marker

'p'

pentagon marker

'P'

plus (filled) marker

'*'

star marker(星星三角形标识)

'h'

hexagon1 marker

'H'

hexagon2 marker

'+'

plus marker

'x'

x marker

'X'

x (filled) marker

'D'

diamond marker(钻石.....其实就是菱形标识)

'd'

thin_diamond marker

'|'

vline marker

'_'

hline marker

        剩下的大家自己去尝试把~ 与marker相配套的还有下面很多参数:

markeredgecolor or mec

color(边框的颜色)

markeredgewidth or mew

float (边框的宽度)

markerfacecolor or mfc

color(内部的颜色)

markerfacecoloralt or mfcalt

color(我也不知道啥意思,但用的不多可以忽略它)

markersize or ms

float (标记样式的大小)

        举个例子,大家结合上面的含义一看便知啦:

import matplotlib.pyplot as plt
x = [1,2,3]
y = [1,2,3]
plt.plot(x,y, marker='o',color='black',
         markersize=10,markeredgecolor='red',
         markerfacecolor='blue',markeredgewidth=3,
         )
plt.show()

plt.ylabel,python--matplotlib库学习,matplotlib,学习,python,pycharm

2. color(颜色)

        matplotlib在参考文档说明中给了几个比较基础的颜色:

'b'

blue

'g'

green

'r'

red

'c'

cyan

'm'

magenta

'y'

yellow

'k'

black

'w'

white

        但实际上我在打比赛和科研的时候都不用这些配色,我们可以自己去寻找其他的颜色,下面的文章很好,大家可以去里面找颜色,在color中输入英文代码和十六进制都是可以的!

关于颜色的十六进制对照表 - 菜鸟-传奇 - 博客园 (cnblogs.com)https://www.cnblogs.com/cainiao-chuanqi/p/11301471.html        我们举个例子:

import matplotlib.pyplot as plt
x = [1,2,3]
y = [1,2,3]
plt.plot(x,y, marker='s',color='MediumSpringGreen') #适中的春天的绿色~~
plt.show()

plt.ylabel,python--matplotlib库学习,matplotlib,学习,python,pycharm

 3. linestyle 和 linewidth

        这两个参数大家字面意思就可以理解到,一个是调节画的线的样式,一个是调节线的粗细,我们来举个例子:

import matplotlib.pyplot as plt
x = [1,2,3]
y = [1,2,3]
plt.plot(x,y, marker='o', linestyle='-.' , linewidth = 3)
plt.show()

plt.ylabel,python--matplotlib库学习,matplotlib,学习,python,pycharm

        下面是具体的线的样式:

'-'

solid line style(实线风格)

'--'

dashed line style(虚线风格)

'-.'

dash-dot line style(点线风格)

':'

dotted line style(正方形点风格)

(3)一个简便的写法

        我们可以把上述参数中的marker、color和linestyle写在一起,或者他们之间的两两组合,此时他们的的参数名可以省略,并写在一个' '中,我们看下面的例子

import matplotlib.pyplot as plt
x = [1,2,3]
y = [1,2,3]
plt.plot(x,y,'r>--')
plt.show()

plt.ylabel,python--matplotlib库学习,matplotlib,学习,python,pycharm

         上述是把颜色红色、点的样式右三角形和虚线风格放在一起。注意:如果要这么去写,颜色必须要写上述matplotlib在参考文档给出的,否则你就单独把color拿出来写!!!点的风格和线的风格我也都在上面给出了,大家根据需要自己选择。

(4)一个图上画多条线

        我们使用plot函数,也可以在一个图上画多条线的,如下:

mport numpy as np
import matplotlib.pyplot as plt
plt.rcParams["font.sans-serif"]=["SimHei"] #设置字体
plt.rcParams["axes.unicode_minus"]=False #该语句解决图像中的“-”负号的乱码问题
a = [0,1,2,3,4]
b = [10,9,8,7,6]
c = [1,2,3,4,5]
d = [9,1,8,2,5]
font = {                      #设置一个后续xy轴和标题使用的字体(包括大小、颜色等)
        'color':  'black',
        'weight': 'normal',
        'size': 20,
        }
plt.plot(a, b, 'k--' , a, c, 'k:', a, d, 'k')  #重点! 三个线的代码写在一起
plt.legend(('NO.1', 'NO.2', 'NO.3'),     #图例
           loc='best', shadow=True, fontsize=16)
plt.xlabel('x轴',fontdict=font)
plt.ylabel('y轴',fontdict=font)
plt.title('一张图',fontdict=font)
plt.show()

 plt.ylabel,python--matplotlib库学习,matplotlib,学习,python,pycharm

(5)通用的图形的美化补充

        要画出一个比较美观的图像,单靠上面的调整肯定是不够的,我们还可以给图像加上标题、图例、横纵坐标含义等等,我们接下来就说几个常用的!

1. 标题

        先说明一下其中包含的参数,我们在给出代码及说明:

import matplotlib.pyplot as plt
plt.title(label, fontdict=None, loc=None, pad=None , y=None, **kwargs)
#label      指的是你输入标题的名称
#fontdict   指的是使用字典控制文本的外观,例如文本大小,文本对齐方式等
#           {fontdict = {‘fontsize’:rcParams [‘axes.titlesize’],
#           ‘fontweight’:rcParams [‘axes.titleweight’],
#           ‘verticalalignment’:‘baseline’,
#           ‘horizontalalignment’:loc}

#loc        指的是标题的位置,例如'center','left','right'等
#pad        指的是标题距轴顶部的偏移量(以磅为单位)  float型
#y          指的是标题的垂直轴位置(1.0为顶部),可以为负值,标题会跑到图的底下  float型
#**kwargs   指的是使用其他关键字参数作为文本属性,比如color、fonstyle、linespacing、background等

        接下来我们以具体的例子来实践一下: 

import matplotlib.pyplot as plt
x = [1,2,3]
y = [1,2,6]
plt.plot(x,y,'c>--')
#plt.title(label="hello world")
plt.title("hello world")
plt.show()

plt.ylabel,python--matplotlib库学习,matplotlib,学习,python,pycharm

         其实,正常情况下,很多都直接定个标题就完事了,上方代码注释部分和下面的代码是一个意思,只是下面把label省略了。在举个例子:

import matplotlib.pyplot as plt
x = [1,2,3]
y = [1,2,6]
plt.plot(x,y,'c>--')
plt.title(label="hello world",loc="left",fontdict={'fontsize':50})
plt.show()

plt.ylabel,python--matplotlib库学习,matplotlib,学习,python,pycharm

         另一个例子:

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0.0, 5.0, 100)
y = np.cos(2*np.pi*x) * np.exp(-x)

font = {'family': 'serif',
        'color':  'darkred',
        'weight': 'normal',
        'size': 16,
        }
plt.plot(x,y)
plt.title(label="Damped exponential decay",loc="right",fontdict=font)
plt.show()

plt.ylabel,python--matplotlib库学习,matplotlib,学习,python,pycharm

         其他的参数大家也可以自己多去尝试,有什么问题随时可以跟我讨论(评论区私信都可以~)

2. x轴 - y轴命名

        它们分别是xlabel和ylabel!我们还是先说一下他们中的常用参数:

import matplotlib.pyplot as plt
plt.xlabel(xlabel, fontdict=None, labelpad=None, loc=None, **kwargs))
plt.ylabel(ylabel, fontdict=None, labelpad=None, loc=None, **kwargs))
#xlabel或ylabel  指的是你输入x轴或y轴的名称
#labelpad   类型为浮点数,默认值为None,即标签与坐标轴的距离
#loc        指的是x或y轴名称的位置,例如:针对x轴为'center','left','right';针对y轴为'center','top','bottom'
#**kwargs   指的是Text对象关键字属性,用于控制文本的外观属性,如字体、文本颜色等

        举个栗子!

import numpy as np
import matplotlib.pyplot as plt

t = np.arange(0.0, 2.0, 0.01)
s = np.sin(2*np.pi*t)

plt.plot(t, s)
plt.title(r'$\mathcal{A}\sin(\omega t)$', fontsize=20)
plt.xlabel('Time [s]')
plt.ylabel('Voltage [mV]')
plt.show()

plt.ylabel,python--matplotlib库学习,matplotlib,学习,python,pycharm

3. 图例 

        老规矩,看一下它的参数,这里matplotlib说明文档里面给了一大堆,感觉有一些也用不上,我也参考了一些资料选出一些比较常用的:

(2条消息) Python:plt.legend或者ax.legend设置图例的参数详解_缘*的博客-CSDN博客https://blog.csdn.net/qq_35240640/article/details/89478439

import matplotlib.pyplot as plt
plt.legend(loc='lower right', fontsize=12, frameon=True, fancybox=True, framealpha=0.2, borderpad=0.3,ncol=1, markerfirst=True, markerscale=1, numpoints=1, handlelength=3.5)

#loc:图例位置,可取(‘best’, ‘upper right’, ‘upper left’, ‘lower left’, ‘lower right’, ‘right’, ‘center left’, ‘center , right’, ‘lower center’, ‘upper center’, ‘center’) ;若是使用了bbox_to_anchor,则这项就无效了
#fontsize:代表字体大小,int或float或{‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’}
#frameon:是否显示图例边框,
#ncol:图例的列的数量,默认为1,
#title:为图例添加标题
#shadow:是否为图例边框添加阴影,
#markerfirst:True表示图例标签在句柄右侧,false反之,
#markerscale:图例标记为原图标记中的多少倍大小,
#numpoints:表示图例中的句柄上的标记点的个数,一般设为1,
#fancybox:是否将图例框的边角设为圆形
#framealpha:控制图例框的透明度
#borderpad:图例框内边距
#labelspacing:图例中条目之间的距离
#andlelength:图例句柄的长度
#bbox_to_anchor:(横向看右,纵向看下),如果要自定义图例位置或者将图例画在坐标外边,用它

        比如我在上方画的这张图(如下)就是图例的一个例子,其中best是指在图中最佳位置放置图例。剩下的参数大家也可以多多实验,这样会自己理解更深刻!

plt.ylabel,python--matplotlib库学习,matplotlib,学习,python,pycharm

总结

        当然,上述的学习还有很多函数可以完善我们的图形,我们留在下一次的文章进行说明,并且会讲一个新的图形函数。

        希望大家发现问题可以及时指出,我也是在不断学习进步中~~~ 谢谢大家的观看,如果帮到了你还请点个赞~

plt.ylabel,python--matplotlib库学习,matplotlib,学习,python,pycharm文章来源地址https://www.toymoban.com/news/detail-722670.html

到了这里,关于python—matplotlib库系列学习(一):plot函数(包含title、xlabel、ylabel、legend函数)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Python】matplotlib.plot画图横坐标混乱及间隔处理

     今天用matplotlib.plot画折线图图时发现横坐标并没有按顺序排列,出现了混乱的情况,导致图很乱,查了好多方法发现是数据类型的原因(最近我出现的好多问题都是因为数据类型不对,下次出问题要记得用type先查一下数据类型)... 我想从06 排到 22,结果不知道为什么06出现在

    2024年02月11日
    浏览(40)
  • Python学习笔记(11-2):matplotlib绘图——图形绘制函数

    因为部分图形绘制函数共用了一套参数体系,在颜色、曲线形状等部分的使用方式也是一致的。所以,在讲解各类图形绘制之前,我们整体性地对各类通用参数进行一个整理,并在此基础上对于颜色(color)、数据点标记(marker)和曲线形式(linestyle)等几个通用参数进行相

    2024年02月06日
    浏览(55)
  • 【Python】plt.title()函数

    plt.title() 是 matplotlib 库中用于设置图形标题的函数。 其中: label 是要设置的标题文本,可以是字符串类型或者是数学表达式。 fontdict 是一个可选的参数,用于设置标题的字体属性,例如字体名称、大小、颜色等。 loc 参数用于指定标题的位置,可以使用字符串(例如 ‘lef

    2024年02月07日
    浏览(45)
  • plot函数python用法

      plot是 Python中的一个基本数据类型,可以用于计算点的坐标和面积,也可以用来做饼状图。plot函数有两个参数,分别是: plot (x,y):用于计算数据的面积。 在 Python中, plot函数有两种形式: 第一种形式为: 其中, plot ()是一个普通的列表函数,用于计算一系列点的面

    2024年02月11日
    浏览(51)
  • Matplotlib.pyplot.plot 绘图

    Matplotlib.pyplot.scatter 散点图绘制 Matplotlib.pyplot 创建图形、在图形中创建创建一个绘图区域、在绘图区域中你那个绘制一些线、在图形中添加标签之类 format_string 控制曲线的格式字符串,可选,由颜色 字符 、 风格 字符和 标记 字符组成 颜色 字符 说明 字符 说明 字符 说明 \\\'

    2024年02月05日
    浏览(33)
  • 【python】plt.plot() 函数绘制loss曲线

    目录 一.  数据形式 (输入数据) 二.  绘图(完整代码) 三.  plt.plot() 函数 (调整图形) 1. plt.plot(x, y)  2. plt.plot(x, y, \\\"格式控制字符串\\\") 2.1 \\\"颜色\\\"与\\\"线型\\\" 2.2 \\\"点型\\\"  3. plt.plot(x, y, \\\"格式控制字符串\\\", =参数) 训练过程中每个epoch都输出当前轮结果,输出数据保存在

    2024年02月06日
    浏览(43)
  • python - 无法正常显示xlabel / ylabel

    如上述所示, 第一个子图是不带投影的,可以正常显示横纵轴标签和标题 第二个子图带有投影,横纵轴通过手动设置范围,可以正常显示横纵轴标签和标题 第三个子图带有投影,横纵轴的tick label通过gridlines设置,但是添加label之后却无法正常显示 不知道具体是什么原因很奇

    2024年01月18日
    浏览(32)
  • Python机器学习:plot_importance()查看特征重要度

    lightgmb算法里面的plot_importance()方法支持特征重要度的查看,下面将以lightgmb算法为例将特征重要度可视化展示出来。另外xgboost算法的实现也几乎一样哦。 事先准备好模型: 以上模型训练好了,下面查看特征重要度: 代码讲解: import导入lightgbm算法里查看特征重要度的plot_

    2024年02月11日
    浏览(40)
  • python使用matplotlib库绘制数学函数

    ** ** matplotlib是python的绘画库,它可以与NumPy一起使用,提供了一种轻量级的MatLab开源高效替代方案。它可以和图形工具包PyQt等工具 一起配合使用,能够完成日常科学计算中多种数学库图可视化任务。 步骤1:使用pip安装matplotlib库 在终端输入 pip install matplotlib 命令,如下图所

    2024年02月12日
    浏览(49)
  • 【python资料】热图和Matplotlib.imshow()函数

    目录 一、说明 二、热图的概念 2.1 基本概念 2.2 热图绘制方法 三、imshow函数说明 3.1 函数原型 3.2 函数参数表 四、imshow使用案例         Matplotlib是一个强大的Python数据可视化库,可以绘制各种类型的图形,其中包括热图。热图通常用于表现数据的分布和趋势。本文用一个

    2024年01月16日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包