不能将set_ydata用于matlibplot中的“​​stem”-plot

时间:2013-11-13 10:14:57

标签: numpy matplotlib ipython-notebook

我无法正确使用set_ydata方法。我有以下代码(我使用IPython笔记本)

%pylab wx
x = arange(20.)
y_old = x**2
y_new = 1.3*y_old

markerline, stemlines, baseline = stem(x,y_old)
markerline.set_ydata(y_new)

结果如下图所示:

stem-plot

我试图添加:

stemlines.set_ydata(y_new)
baseline.set_ydata(y_new)

但程序崩溃了。可以做些什么来刷新干线图的所有元素?

1 个答案:

答案 0 :(得分:2)

你需要循环干线,并为每一行设置y_data:

x = arange(20.)
y_old = x**2
y_new = 1.3*y_old

markerline, stemlines, baseline = stem(x,y_old)
markerline.set_ydata(y_new)
for line, y in zip(stemlines, y_new):
    line.set_ydata([0, y])