我有一個帶有股票資料的無聊資料框:
date close MA100 buy sell
2022-02-14 324.95 320.12 0 0
2022-02-13 324.87 320.11 1 0
2022-02-12 327.20 321.50 0 0
2022-02-11 319.61 320.71 0 1
然后我正在繪制價格
import pandas as pd
import matplotlib.pyplot as plt
df = ...
df['close'].plot()
df['MA100'].plot()
plt.show()
到目前為止一切順利......然后我想在圖表上顯示一個標記,如果那天有買入(綠色)或賣出(紅色)。這只是為了強調那天是否有交易。交易發生的確切盤中價格并不重要。
因此,如果買(賣)列中有 1,x/y 坐標可能是日期和收盤價。
我不確定如何實作這一點。我是否需要一個回圈來遍歷buy = 1(sell = 1)的所有行,然后以某種方式將這些匹配項添加到圖中(可能帶有注釋?)
如果有人能指出我正確的方向,我將不勝感激!
uj5u.com熱心網友回復:
您可以查詢資料框的賣出/買入和散點圖:
fig, ax = plt.subplots()
df.plot(x='date', y=['close', 'MA100'], ax=ax)
df.query("buy==1").plot.scatter(x='date', y='close', c='g', ax=ax)
df.query("sell==1").plot.scatter(x='date', y='close', c='r', ax=ax)
輸出:

轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/446252.html
標籤:Python 熊猫 matplotlib
