[英]How to remove stemline(s) from a matplotlib stem plot?
这是在 matplotlib 中创建茎图的示例脚本。
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt
import numpy as np
# returns 10 evenly spaced samples from 0.1 to 2*PI
x = np.linspace(0.1, 2 * np.pi, 10)
fig, ax = plt.subplots( figsize=(4.,3.), constrained_layout=True)
markerline, stemline, baseline = ax.stem(x, np.cos(x), '-.', use_line_collection=True)
markerline1, stemline1, baseline1 = ax.stem(x, np.cos(x*5), '-', use_line_collection=True)
plt.setp(baseline, color='black', linewidth=2)
plt.setp(baseline1, color='black', linewidth=2)
plt.setp( stemline, color="green" )
plt.setp( stemline1, color="red" )
plt.show()
一季度。 创建这些图后,我想删除例如markerline1
、 stemline1
、 baseline1
。 我如何删除它们?
Q2。 如果我想删除从整个干情节ax
,不影响其他设置ax
,我该怎么办呢? 我发现ax.clear()
从ax
删除了所有内容。
根据 matplotlib,
用户警告:在 Matplotlib 3.3 中,茎图上的单个线条将作为 LineCollection 而不是单个线条添加。
此外, LineCollection似乎有一个名为segment
的属性,其中包含所有主干线的 x,y 信息。
Q3。 如何从ax
或fig
获取LineCollection
对象? 我正在探索修改LineCollection
对象是否是回答我的第一个问题的方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.