我目前正在使用 Alpha Vantage API 制作日内股票图表。数据框包含从 4:00 到 20:00 的值。然而,在我的 matplotlib.pyplot 图表中,x 轴还包括夜间 20:00 到 4:00 的值。我不想要这个,因为它扰乱了美学和 Volume 子图。
问:有什么方法可以跳过实际数据框中不存在的 x 轴值(从 20:00 到 04:00 的值)?
可以看到,Data Frame 明显从 20:00 跳到了 04:00
然而在 Matplotlib 图表中,x 轴包含从 20:00 到 4:00 的值,弄乱了图表
代码到此为止。我相信到目前为止一切都是正确的:
import pandas as pd
import matplotlib.pyplot as plt
from alpha_vantage.timeseries import TimeSeries
import time
import datetime as dt
from datetime import timedelta as td
from dateutil.relativedelta import relativedelta
#Accessing and Preparing API
ts = TimeSeries(key=api_key, output_format='pandas')
ticker_input = "TSLA"
interval_input = "15min"
df, meta_data = ts.get_intraday(symbol = ticker_input, interval = interval_input, outputsize = 'full')
slice_date = 16*4*5
df = df[0:slice_date]
df = df.iloc[::-1]
df["100ma"] = df["4. close"].rolling(window = 50, min_periods = 0).mean()
df["Close"] = df["4. close"]
df["Date"] = df.index
#Plotting all as 2 different subplots
ax1 = plt.subplot2grid((7,1), (0,0), rowspan = 5, colspan = 1)
ax1.plot(df["Date"], df['Close'])
ax1.plot(df["Date"], df["100ma"], linewidth = 0.5)
plt.xticks(rotation=45)
ax2 = plt.subplot2grid((6,1), (5,0), rowspan = 2, colspan = 2, sharex = ax1)
ax2.bar(df["Date"], df["5. volume"])
ax2.axes.xaxis.set_visible(False)
plt.tight_layout()
plt.show()
如果有人可以提供帮助,那就太好了。我仍然是一个完全的初学者,两周前才开始使用 Python。
蛊毒传说
繁花如伊
相关分类