为了账号安全,请及时绑定邮箱和手机立即绑定

多个 matplotlib 子图:将 Pandas 数据帧 HTML 与每个子图交错

多个 matplotlib 子图:将 Pandas 数据帧 HTML 与每个子图交错

慕虎7371278 2021-08-24 18:19:58
我有一个pandas.DataFrame多行(我想检查每笔交易 1 个)trades = pandas.read_csv(...)我想在 matplotlib 子图上绘制每笔交易。我创建了一个pyplot.figure使用len(trades)来创建足够的高度fig = pyplot.figure(figsize=(40,15 * len(trades)))然后我迭代每笔交易并生成一个图for i,r in enumerate(trades.iterrows()):    _, trade = r    start = trade.open_time  - datetime.timedelta(seconds=30)    end   = trade.close_time + datetime.timedelta(seconds=30)     b = bids[start:end]    a = asks[start:end]    ax = fig.add_subplot(len(trades),1,i+1)    # plot bid/ask    ax.plot_date(b.index, b, fmt='-',  label='bid')    ax.plot_date(a.index, a, fmt='-',  label='ask')    # plot entry/exit markers    ax.plot(trade.open_time,  trade.open_price,  marker='o', color='b')    ax.plot(trade.close_time, trade.close_price, marker='o', color='r')    ax.set_title("Trade {}".format(i+1, fontsize=10)    ax.set_xlabel("Date")    ax.set_ylabel("Price")    ax.legend(loc='best', fontsize='large')pyplot.show()# free resourcespyplot.close(fig.number) 这很好用。但是,现在我想为相关交易显示数据框的渲染 HTML。由于我是在 jupyter notebook 中执行此操作,因此从这个 SO answer 中,我能够找到以下代码段,该代码段将在 html 中显示我的数据框:t = pandas.DataFrame(trades.iloc[i]).TIPython.display.display(IPython.display.HTML(t.to_html())我将此代码段插入到我的循环中。
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 164 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信