在散点图上绘制折线图

时间:2019-03-14 23:05:10

标签: python matplotlib graphing

我知道如何在相同数据的散点图上绘制折线图,​​但是有没有办法使折线图向前移动,使其位于标记的顶部而不是后面?

示例代码:

import numpy as np

x=np.array([1,2,3,4,5])
y=np.array([1,2,3,4,5])

plt.errorbar(x,y,xerr=0.1,yerr=0.1, fmt="x",markersize=5, color = "orange")
plt.plot(x,y)

此代码输出一个散点图,其后有一个折线图。当您增加数据点的数量时,将很难看到它们后面的所有线。除了减小标记大小之外,我还可以将线条置于所有点的顶部吗?

2 个答案:

答案 0 :(得分:1)

您可以使用选项barsabove=True。这会将错误栏放置在标记上方,并且该行显示在错误栏和标记的顶部。为了突出这种效果,我使用了一个粗大的误差线。如您所见,蓝线位于误差线和标记上方。使用barsabove=False(默认值)查看差异。

x=np.array([1,2,3,4,5])
y=np.array([1,2,3,4,5])

plt.errorbar(x,y,xerr=0.1,yerr=0.1, linewidth=10, fmt="x",markersize=5, color = "orange", barsabove=True)
plt.plot(x,y)

enter image description here

答案 1 :(得分:0)

我认为您打算在屏幕上以不同的z顺序绘制事物。这样做是这样的:

plt.plot(x,y, zorder=10)

注10任意大,这可能也会出现在图例的顶部,因此您可能需要对其进行调整!