我正在使用Pandas和Matplotlib创建一些图表。我想要带有误差线的折线图。我目前使用的代码如下:
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
df = pd.DataFrame(index=[10,100,1000,10000], columns=['A', 'B', 'C', 'D', 'E', 'F'], data=np.random.rand(4,6))
df_yerr = pd.DataFrame(index=[10,100,1000,10000], columns=['A', 'B', 'C', 'D', 'E', 'F'], data=np.random.rand(4,6))
fig, ax = plt.subplots()
df.plot(yerr=df_yerr, ax=ax, fmt="o-", capsize=5)
ax.set_xscale("log")
plt.show()
使用这段代码,我在一个图表上得到了6条线(这正是我想要的)。然而,误差棒完全重叠,使得图表难以阅读。
有没有办法稍微移动每个点在x轴上的位置,以便误差棒不再重叠?
以下是截图:
![enter image description here](https://istack.dev59.com/c7uKk.webp)