หากต้องการข้ามวันหยุดสุดสัปดาห์ในกราฟการเงินใน matplotlib เราสามารถวนซ้ำเวลาใน dataframe และข้ามพล็อตหากวันธรรมดาคือ 5 หรือ 6
ขั้นตอน
-
กำหนดขนาดรูปและปรับช่องว่างภายในระหว่างและรอบๆ แผนผังย่อย
-
สร้างดาต้าเฟรมด้วย คีย์ เวลา.
-
วนซ้ำดัชนีซิปและเวลาของกรอบวันที่
-
หากการประทับเวลาแบบวนซ้ำเป็นวันธรรมดาที่ 5 หรือ 6 อย่าพล็อตมัน
-
นอกเหนือจาก 5 หรือ 6 วันธรรมดา ให้วางแผนคะแนน
-
กำหนดตำแหน่งปัจจุบันติ๊กของแกน Y
-
วางโครงเรื่องด้วยเส้นตาราง
-
หากต้องการแสดงรูป ให้ใช้ show() วิธีการ
ตัวอย่าง
import pandas as pd from matplotlib import pyplot as plt plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True df = pd.DataFrame(dict(time=list(pd.date_range(start="2021-01-01", end="2021-01-15")))) for i, t in zip(df.index, df.time): if t.weekday() in (5, 6): pass else: plt.plot(i, t, marker="*", ms=10) plt.yticks(df.time) plt.grid(True) plt.show()
ผลลัพธ์