我如何使用matplotlib绘制像gnuplot的'with impulses'这样的风格?

Joh*_*ohn 3 python plot matplotlib pandas

我想用python/pandas/matplotlib创建一个类似下面的图.上部剪辑没有问题,但我无法得到像下部剪辑那样的情节.我可以在gnuplot中进行,其中等效的绘图风格是"带有冲动".matplotlib可以吗?如果matplotlib不可能有另一个python图形包可以工作吗?

下夹的gnuplot风格是'带有冲动'

Imp*_*est 5

创建这样一个情节的最简单方法是使用pyplot.stem.这里可以找到一个例子.

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0.1, 6*np.pi, 50)
plt.stem(x, np.cos(x)+1, linefmt='g-', markerfmt=' ')
plt.stem(x, -np.sin(x)-1, linefmt='r-', markerfmt=' ', basefmt="gray")

plt.show()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

另一种选择是使用pyplot.vlines.