python使用matplotlib定制绘图的线型、标记类型

 更新时间:2023年07月16日 09:09:17   作者:微小冷  
这篇文章主要给大家详细介绍了python使用matplotlib定制绘图的线型、标记类型,文中有详细的代码示例,具有一定的参考价值,需要的朋友可以参考下

折线图

折线图是科研绘图中最常见的一种图形, 表现的是数据的变化情况

import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0,10,100)
y = np.sin(x)
plt.plot(x,y)
plt.show()

数列表

尽管绘图逻辑十分简单,仍然有一些可定制的绘图要素,比如线的宽窄、颜色、形态,以及标记、标记的颜色和形态。matplotlib中的许多绘图函数都通过下列参数来调控这些形态

参数简写功能
linestylels线型
linewidthlw线宽
marker标记形状
markersizems标记尺寸
markeredgewidthmew标记边缘线宽
markeredgecolormec标记颜色
markerfacecolormfc标记内部颜色

其中可选的线型和点型如下表所示

字符类型字符类型字符类型字符类型
‘-’实线‘–’虚线‘-.’虚点线‘:’点线
‘.’‘,’虚线
‘o’圆点‘*’星型点‘+’加号点‘x’乘号点
‘v’下三角点‘^’上三角点‘<’左三角点‘>’右三角点
‘1’下三叉点‘2’上三叉点‘3’左三叉点‘4’右三叉点
‘s’正方点‘p’五角点‘h’六边形1‘H’六边形2
‘D’实心菱形点‘d’瘦菱形点‘_’横线点

对一些常见的颜色可通过下表中的字符来设置

字符颜色字符颜色字符颜色
‘b’blue‘g’green‘r’red
‘c’cyan‘m’magenta‘y’yellow
‘k’black‘w’white

实战演示

下面挑选几个做个演示

x = np.linspace(0, 3.14, 20)
Ls = ['-', '--', '-.', ':']
mks = ['s', 'p', 'h', 'H']
cs = ['r', 'g', 'b','c']
ys = [np.sin(x), np.cos(x), np.tan(x), np.sqrt(x)]
labels = ['sin', 'cos', 'tan', 'sqrt']
for i in range(4):
    plt.plot(x, ys[i], ls=Ls[i],
        marker=mks[i], ms=5,
        color=cs[i], label=labels[i])
plt.grid()
plt.legend()
plt.show()

效果如下

其中

  • sin曲线选择了标记为s,表示正方形,线型为-,表示实线;颜色是r,表示红色。
  • cos曲线选择的标记是p,表示正五边形,线型为--,表示虚线;颜色是g,表示绿色。
  • tan曲线选择的标记是h,表示正六边形,线型为-.,表示点划线;颜色是b,表示蓝色。
  • cos曲线选择的标记是H,表示正六边形,线型为.,表示点线;颜色是c,表示青色。

特征字符串

考虑到线的类型、点的类型以及颜色类型都可以用字符来表示,所以matplotlib支持奖这些类型合在一起,从而在绘图时可以更加便捷,所以将代码写成下面的形式,也可以得到和上图相同的结果

x = np.linspace(0, 3.14, 20)
ys = [np.sin(x), np.cos(x), np.tan(x), np.sqrt(x)]
labels = ['sin', 'cos', 'tan', 'sqrt']
strs = ['rs-', 'gp--', 'bh-.', 'cH:']
for i in range(4):
    plt.plot(x, ys[i], strs[i], ms=5, label=labels[i])
plt.grid()
plt.legend()
plt.show()

sin曲线为例,其特征字符串rs-,表示颜色为红色r,标记类型为s,即正方形,线型是-,即实线。

到此这篇关于python使用matplotlib定制绘图的线型、标记类型的文章就介绍到这了,更多相关matplotlib定制绘图的线型、标记类型内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Django+python服务器部署与环境部署教程详解

    Django+python服务器部署与环境部署教程详解

    这篇文章主要介绍了Django+python服务器部署与环境部署教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-03-03
  • 利用python在Word文档中创建和执行条件邮件合并

    利用python在Word文档中创建和执行条件邮件合并

    邮件合并域和IF域是Word文档中两种非常实用的域,前者可以用来进行邮件合并,根据数据批量创建定制的Word文档,本文讲介绍如何使用Python在Word文档中创建条件邮件合并域以及执行条件邮件合并,需要的朋友可以参考下
    2024-08-08
  • PyTorch模型的保存与加载方法实例

    PyTorch模型的保存与加载方法实例

    Pytorch保存模型其实非常简单,下面这篇文章主要给大家介绍了关于PyTorch模型的保存与加载的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-09-09
  • 如何写python的配置文件

    如何写python的配置文件

    在本篇文章里小编给大家分享了关于python写配置文件方法,对此有兴趣的朋友们可以学习参考下。
    2020-06-06
  • python中将字典转换成其json字符串

    python中将字典转换成其json字符串

    Python的字典和JSON在表现形式上非常相似,其实实际上JSON就是Python字典的字符串表示,但是字典作为一个复杂对象是无法直接转换成定义它的代码的字符串,我们来详细分析下
    2014-07-07
  • Python从入门到精通之Redis操作详解

    Python从入门到精通之Redis操作详解

    Redis(Remote Dictionary Server)是一种高性能的开源内存数据库,它支持多种数据结构,本文主要为大家介绍了Python中操作Redis数据库的方法,需要的可以参考下
    2023-08-08
  • 解决TensorFlow模型恢复报错的问题

    解决TensorFlow模型恢复报错的问题

    今天小编就为大家分享一篇解决TensorFlow模型恢复报错的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • Python用字典构建多级菜单功能

    Python用字典构建多级菜单功能

    这篇文章主要介绍了Python用字典构建多级菜单功能,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-07-07
  • python批量查询、汉字去重处理CSV文件

    python批量查询、汉字去重处理CSV文件

    这篇文章主要为大家详细介绍了python批量查询、汉字去重处理CSV文件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • Pycharm配置autopep8实现流程解析

    Pycharm配置autopep8实现流程解析

    这篇文章主要介绍了Pycharm配置autopep8实现流程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11

最新评论