2

使用 matplotlib 生成茎图时,如何使基线扩展到轴限制,而不是以最后一个数据点结束?

截断基线的示例茎图

4

1 回答 1

2

绘图的基线plt.stem从函数调用返回,

markerline, stemlines, baseline = plt.stem(x, np.cos(x), '-.')

您可以将该线的数据设置为[0,1]并使用yaxis_transform,以便将这些坐标解释为轴坐标。

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0.1, 2*np.pi, 10)
markerline, stemlines, baseline = plt.stem(x, np.cos(x), '-.')
plt.setp(baseline, 'color', 'r', 'linewidth', 2)

baseline.set_xdata([0,1])
baseline.set_transform(plt.gca().get_yaxis_transform())

plt.show()

在此处输入图像描述

于 2017-11-09T11:20:14.803 回答