Python绘制茎叶图的示例代码

 更新时间:2024年01月09日 10:29:01   作者:微小冷  
这篇文章主要为大家信息介绍了Python绘制茎叶图的相关知识,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以跟随小编一起学习一下

简介

茎叶图从外观来看,更像是火柴,由基线、茎线、茎头三部分构成。最简单的示例如下

import numpy as np
import matplotlib.pyplot as plt
plt.stem(np.sin(np.arange(10)))
plt.show()

参数

stem的完整参数如下

stem([locs,] heads, linefmt=None, markerfmt=None, basefmt=None, bottom=0, label=None, orientation='vertical', data=None)

其中

  • locs和heads表示其x , y x,yx,y方向的值。如果只输入一组数值,则默认输入的是heads。
  • linefmt, markerfmt, basefmt 均为字符串,分别用于定义茎线、茎头以及基线的格式。
  • orientation 表示茎叶图方向,默认为’vertical’,若取值为’horizontal’,则茎叶图调转90°
  • bottom 为基线的位置
  • label 为图例中使用的标签

linefmt和basefmt字符串由两部分组成,分别用于设置茎线的颜色和类型,第一部分格式为Cx,表示色环中第x种颜色;第二部分可选’-', ‘–’, ‘-.’, ‘:’,表示线的虚实类型。当然,第一部分直接采取颜色缩写,比如r,g,b也是可以的。

markerfmt也是同样的格式,但用于调整茎头标记点的字符与线型有所差异。其具体可选值存放在Line2D中

from matplotlib.lines import Line2D
 from pprint import pprint
 pprint(Line2D.markers)

打印结果是一个字典,列表如下

0‘tickleft’1‘tickright’2‘tickup’
3‘tickdown’4‘caretleft’5‘caretright’
6‘caretup’7‘caretdown’8‘caretleftbase’
9‘caretrightbase’10‘caretupbase’11‘caretdownbase’
‘’‘nothing’’ ’‘nothing’‘*’‘star’
‘+’‘plus’‘,’‘pixel’‘.’‘point’
‘1’‘tri_down’‘2’‘tri_up’‘3’‘tri_left’
‘4’‘tri_right’‘8’‘octagon’‘<’‘triangle_left’
‘>’‘triangle_right’‘D’‘diamond’‘H’‘hexagon2’
None’‘nothing’‘P’‘plus_filled’‘X’‘x_filled’
‘^’‘triangle_up’‘_’‘hline’‘d’‘thin_diamond’
‘h’‘hexagon1’‘none’‘nothing’‘o’‘circle’
‘p’‘pentagon’‘s’‘square’‘v’‘triangle_down’
‘x’‘x’‘vline’

演示

下面演示一下不同格式的效果

lf = ['C0-', 'C1--', 'C2-.', 'C3:']
mf = ['C40', 'r*', 'g8', 'bD']

xs = np.sin(np.arange(10))

fig = plt.figure()
for i in range(4):
    ax = fig.add_subplot(2,2,i+1)
    ax.stem(xs, linefmt=lf[i], markerfmt=mf[i])
    plt.title(f"linefmt={lf[i]}, markerfmt={mf[i]}")

plt.show()

效果如下

到此这篇关于Python绘制茎叶图的示例代码的文章就介绍到这了,更多相关Python茎叶图内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:

相关文章

  • 浅析Python中常见数据脱敏技术应用与对比

    浅析Python中常见数据脱敏技术应用与对比

    数据脱敏通过对敏感数据进行转换,确保其在保护隐私的同时仍能用于开发,本文为大家整理了一些常见的数据脱敏技术,感兴趣的小伙伴可以了解下
    2025-02-02
  • python+pygame实现简易五子棋小游戏的三种方式

    python+pygame实现简易五子棋小游戏的三种方式

    这篇文章主要介绍了使用python实现简易五子棋小游戏,文中提供了三种实现方式,解决思路和部分实现代码,感兴趣的朋友可以参考下
    2023-03-03
  • windows下Anaconda的安装与配置正解(Anaconda入门教程)

    windows下Anaconda的安装与配置正解(Anaconda入门教程)

    最近很多朋友学习python,很多朋友也推荐使用anaconda这个工具,但安装以后也不会使用,这里脚本之家小编就为大家整理一下比较详细的教程,方便自己也方便需要的朋友,希望大家以后多多支持脚本之家
    2018-04-04
  • Python 实现PS滤镜的旋涡特效

    Python 实现PS滤镜的旋涡特效

    这篇文章主要介绍了Python 实现 PS 滤镜的旋涡特效,帮助大家更好的利用python处理图片,感兴趣的朋友可以了解下
    2020-12-12
  • Python sklearn KFold 生成交叉验证数据集的方法

    Python sklearn KFold 生成交叉验证数据集的方法

    今天小编就为大家分享一篇Python sklearn KFold 生成交叉验证数据集的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • python的环境conda简介

    python的环境conda简介

    conda是一个包,依赖和环境管理工具,适用于多种语言,如: Python, R, Scala, Java, Javascript, C/ C++, FORTRAN,这篇文章主要介绍了python的环境conda简介,需要的朋友可以参考下
    2022-09-09
  • python利用opencv调用摄像头实现目标检测

    python利用opencv调用摄像头实现目标检测

    这篇文章主要为大家介绍了python利用opencv调用摄像头实现目标检测的示例代码,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • Python torch.flatten()函数案例详解

    Python torch.flatten()函数案例详解

    这篇文章主要介绍了Python torch.flatten()函数案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • 聊聊Python代码中if __name__ == ‘__main__‘的作用是什么

    聊聊Python代码中if __name__ == ‘__main__‘的作用是什么

    一个python文件通常有两种使用方法,第一是作为脚本直接执行,第二是 import 到其他的python脚本中被调用执行,这篇文章主要给大家介绍了关于Python代码中if __name__ == ‘__main__‘的作用是什么的相关资料,需要的朋友可以参考下
    2022-03-03
  • Python实现微信好友的数据分析

    Python实现微信好友的数据分析

    这篇文章主要为大家详细介绍了Python实现微信好友的数据分析,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-12-12

最新评论