Plotting a Swing chart over the generic OHLC chart
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 35/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- python
- Lĩnh vực
- data-visualization
Hướng nghiên cứu
Bắt đầu với các lệnh gọi mpf.plot và mpf.make_addplot trong ví dụ, sau đó tái hiện sự không khớp bằng cách sử dụng các DataFrame daily và swing đã mô tả. Theo dõi cách dữ liệu addplot được căn chỉnh với trục x OHLC; hoàn tất khi một chuỗi swing thưa có thể được phủ lên biểu đồ OHLC thông thường mà không gặp lỗi kích thước x/y và khớp với phần trực quan hóa swing được yêu cầu.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
I'm want to visualize a swings/price movement chart over a normal OHLC chart, e.g., like the attachment below.

I have written the following code:
def get_swing_dataframe(daily: DataFrame):
last_high = -999999999
last_low = abs(last_high)
raw_dftb = []
dip = True
for row in daily.iterrows():
close = row[1]["Close"]
mark = False
if dip:
if close > last_high:
dip = False
mark = True
last_high = close
else:
if close < last_low:
dip = True
mark = True
last_low = close
if mark:
raw_dftb.append(row[1])
df = pd.DataFrame(raw_dftb)
df.index.name = "Date"
return df
def main():
daily = pd.read_csv("ES___CCB.csv", index_col=0, parse_dates=True)
daily.index.name = "Date"
swing = get_swing_dataframe(daily)
mpf.plot(
daily,
style="binance",
type="ohlc",
addplot=[mpf.make_addplot(swing, type="line", color="g", panel=1)],
)
if __name__ == "__main__":
main()
The issue here is that the "Swing" dataframe does not have a data entry for every single date, it only marks where and when the price changes, spitting out the following error:
File "D:\Andaconda3\lib\site-packages\matplotlib\axes\_axes.py", line 1605, in plot
lines = [*self._get_lines(*args, data=data, **kwargs)]
File "D:\Andaconda3\lib\site-packages\matplotlib\axes\_base.py", line 315, in __call__
yield from self._plot_args(this, kwargs)
File "D:\Andaconda3\lib\site-packages\matplotlib\axes\_base.py", line 501, in _plot_args
raise ValueError(f"x and y must have same first dimension, but "
ValueError: x and y must have same first dimension, but have shapes (6232,) and (23,)
How can I achieve this?
Recap: I want to visualize a swings/price movement chart over a normal OHLC chart, e.g., like the attachment below.
- Ngôn ngữ chính
- Python
- Star
- 4.4k
- Fork
- 678
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của matplotlib/mplfinance
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
matplotlib/mplfinance#672 ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 10/100
matplotlib/mplfinance#700 ·
-
enhancement
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 30/100
matplotlib/mplfinance#695 ·
-
question
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 25/100
matplotlib/mplfinance#691 · 1 bình luận ·
-
question
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 52/100
matplotlib/mplfinance#690 · 5 bình luận ·
Tất cả issue của matplotlib/mplfinance
Issue tương tự
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
stephrobert/dsoxlab#238 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
sublimehq/package_control#1780 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
nwg-piotr/nwg-displays#145 ·