matplotlib.pyplot.stem()函数 - 创建stem图

matplotlib.pyplot.stem()函数

Matplotlib是Python中一个用于2D数组绘图的可视化库。Matplotlib是一个基于NumPy数组构建的多平台数据可视化库,用于更广泛的SciPy堆栈。

matplotlib.pyplot.stem()

matplotlib.pyplot.stem()创建stem图。Stem图绘制从基线到y的每一个x位置的垂直线,并在那里放置一个标记。

语法:stem([x, ] y, linefmt=None, markerfmt=None, basefmt=None)

参数:

  • x(类似数组,可选):茎的x位置。缺省值:(0,1,…,len(y) – 1)。
  • y(类似数组):茎头的y值。
  • linefmt (str,可选):定义竖线属性的字符串。通常,这将是一个颜色或一个颜色和线条样式:
    • ‘-‘: 实线
    • ‘–‘: 虚线
    • ”-.’: dash-dot线
    • ‘:’ 虚线

注意:虽然在技术上可以指定除颜色或颜色和线型之外的有效格式(e.g。’ rx ‘或’ -. ‘),这超出了该方法的本意,很可能不会产生合理的绘图结果。
* markerfmt (str,可选):一个字符串,定义茎头标记的属性。默认值:‘C0o’,我# @e。用颜色循环的第一种颜色填充圆圈。
* basefmt (str,可选):定义基线属性的格式字符串。
* Default:’ C3- ‘(经典模式为’ C2- ‘)。
* bottom (float,可选,默认:0):基线的y位置。
* label (str,可选,默认:None):图例中茎的标签。
* use_line_collection(bool,,:False):,,,,。这将显著提高性能,并将成为Matplotlib 3.3中的默认选项。如果为False,则默认使用Line2D对象列表的旧行为。

返回:

container : StemContainer

容器可以像元组一样处理

(markerline, stemlines, baseline)

示例1

Stem绘制从基线到y坐标的垂直线,并在尖端放置标记。

# importing libraries
import matplotlib.pyplot as plt
import numpy as np
  
x = np.linspace(0.1, 2 * np.pi, 41)
y = np.exp(np.sin(x))
  
plt.stem(x, y, use_line_collection = True)
plt.show()

输出 :

matplotlib.pyplot.stem()

示例2

基线的位置可以使用底部来调整。参数linefmt、markerfmt和basefmt控制绘图的基本格式属性。然而,与plot相反,并不是所有属性都可以通过关键字参数进行配置。对于更高级的控制,可以使用pyplot返回的line对象。

# importing libraries
import random
import matplotlib.pyplot as plt
  
x = np.linspace(0.1, 2 * np.pi, 41)
y = np.exp(np.sin(x))
  
markerline, stemlines, baseline = plt.stem(
    x, y, linefmt ='grey', markerfmt ='D',
    bottom = 1.1, use_line_collection = True)
  
markerline.set_markerfacecolor('none')
plt.show()

输出:

matplotlib.pyplot.stem()

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程