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定制绘图的线型、标记类型内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python为什么要保留显式的self

    Python为什么要保留显式的self

    本文主要介绍了Python为什么要保留显式的self,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • Python实战之ATM取款机的实现

    Python实战之ATM取款机的实现

    这篇文章主要为大家详细介绍了如何利用Python语言模拟实现ATM取款机功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2022-09-09
  • Python 单例设计模式用法实例分析

    Python 单例设计模式用法实例分析

    这篇文章主要介绍了Python 单例设计模式用法,结合实例形式分析了Python单例模式的具体定义与使用操作技巧,需要的朋友可以参考下
    2019-09-09
  • pycharm开发工具使用plt.show()不显示图像的解决方案

    pycharm开发工具使用plt.show()不显示图像的解决方案

    文章描述了在使用PyCharm开发工具时,`plt.show()`不显示图像的问题,并提供了两种解决方法:首先是在设置中取消勾选“PythonScientific”选项,然后重新运行程序即可显示图像
    2026-03-03
  • Python编程利用Numpy和PIL库将图片转化为手绘

    Python编程利用Numpy和PIL库将图片转化为手绘

    这篇文章主要介绍了Python编程利用Numpy和PIL库将一张图片转化为手绘风格,文中附含详细实现的示例代码,有需要的朋友可以借鉴参考下
    2021-09-09
  • tensorflow mnist 数据加载实现并画图效果

    tensorflow mnist 数据加载实现并画图效果

    TensorFlow&#8482; 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。这篇文章给大家介绍tensorflow mnist 数据加载实现并画图效果,感兴趣的朋友一起看看吧
    2020-02-02
  • Python中的异常处理raise案例介绍

    Python中的异常处理raise案例介绍

    本文讲解Python中手动抛出异常的raise语句用法,包括三种形式及异常处理流程,介绍如何通过traceback模块定位错误位置,帮助开发者有效管理程序异常,感兴趣的朋友跟随小编一起看看吧
    2025-07-07
  • Python数据分析应用之Matplotlib数据可视化详情

    Python数据分析应用之Matplotlib数据可视化详情

    这篇文章主要介绍了Python数据分析应用之Matplotlib数据可视化详情,文章围绕主题展开详细的内容介绍,具有一定的参考价值,感兴趣的小伙伴可以参考一下
    2022-06-06
  • django文档学习之applications使用详解

    django文档学习之applications使用详解

    这篇文章主要介绍了Python文档学习之applications使用详解,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • pandas行和列的获取的实现

    pandas行和列的获取的实现

    本文主要介绍了pandas行和列的获取的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01

最新评论