gpt4 book ai didi

enthought - 如何使用 Chaco 在同一轴上绘制多个 (x,y) 系列?

转载 作者:行者123 更新时间:2023-12-04 22:05:48 24 4
gpt4 key购买 nike

我有几组 (x,y) 数据,我想将它们绘制为同一图上的线图。我对 matplotlib 执行此操作没有任何问题,但我无法使用 Chaco 获得相同的结果。代码和输出如下所示。

我的基于 matplotlib 的代码如下所示:

for track in tracks:
xw = np.array(track['xw'])
yw = np.array(track['yw'])
plt.plot(xw, yw, 'b-')
if not plt.gca().yaxis_inverted():
plt.gca().invert_yaxis()

我的基于 Chaco 的代码如下所示:
for track in tracks:
x = np.array(track['xw'])
y = np.array(track['yw'])
plot = create_line_plot((x,y), color='blue', width=1.0)
plot.origin = 'top left'
container.add(plot)
if track == tracks[0]:
add_default_grids(plot)
add_default_axes(plot)

我基于 matplotlib 的输出如下所示:

我基于 chaco 的输出如下所示:

最佳答案

我上面基于 Chaco 的代码的问题是我使用的是 OverlayPlotContainer ( container )。因此,每个图(来自 create_line_plot )都是用自己的轴绘制的,而不是每个图都绘制在同一组轴上。以下工作:

    pd = ArrayPlotData()
plot = Plot(pd)
for ii, track in enumerate(tracks):
x = np.array(track['xw'])
y = np.array(track['yw'])
x_key = 'x'+str(ii)
y_key = 'y'+str(ii)
pd.set_data(x_key, x)
pd.set_data(y_key, y)
plot.plot((x_key, y_key), color='blue', origin='top left')

关于enthought - 如何使用 Chaco 在同一轴上绘制多个 (x,y) 系列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16224346/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com