在散点图上绘制折线图
Plotting line graph over scatter graph
我知道如何在相同数据的散点图上绘制折线图,但有没有办法将折线图向前移动,使其位于标记的顶部而不是后面?
示例代码:
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)
这段代码输出一个散点图,后面有一个折线图。当你增加数据点的数量时,就很难看到它们背后的线条。除了减小标记大小之外,我可以将线置于所有点之上吗?
我认为您打算在屏幕上以不同级别的 z 顺序绘制内容。这是这样做的:
plt.plot(x,y, zorder=10)
注释 10 任意大,这也可能会绘制在您的图例之上,因此您可能需要调整它!
您可以使用选项 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)
我知道如何在相同数据的散点图上绘制折线图,但有没有办法将折线图向前移动,使其位于标记的顶部而不是后面?
示例代码:
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)
这段代码输出一个散点图,后面有一个折线图。当你增加数据点的数量时,就很难看到它们背后的线条。除了减小标记大小之外,我可以将线置于所有点之上吗?
我认为您打算在屏幕上以不同级别的 z 顺序绘制内容。这是这样做的:
plt.plot(x,y, zorder=10)
注释 10 任意大,这也可能会绘制在您的图例之上,因此您可能需要调整它!
您可以使用选项 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)