我想问一下如何创建一个具有两个不同 y 轴的图形?
!pip install yfinance
import yfinance as yf
import numpy as np
df=yf.download('cl=f',start='2019-01-04',end='2021-06-2',interval='1d')
df['LogReturn'] = np.log(df['Close']).diff()
df['volitality']=df['LogReturn'].rolling(3).std()
#I want plot Close price with volitality, but the issu is that volitality y axis is way less than the price
df[['volitality']].plot(figsize=(10,5));
df['Close'].plot(figsize=(10,5))
这使它们变成了两个不同的图。我想创建一个带有两个 y 轴的图形。一个显示收盘价,另一个显示波动率。有什么建议吗? 谢谢
答案 0 :(得分:0)
我创建了一个包含 2 列“a”、“b”的数据框。每个包含 100 个随机数
import random
a = [random.randint(-100,100) for _ in range(100)]
b = [random.randint(-100,500) for _ in range(100)]
df = pd.DataFrame(list(zip(a,b)), columns=['a','b'])
接下来我使用以下代码绘制图表
fig, ax1 = plt.subplots(figsize=(12,8))
ax1.plot(df['a'])
ax2=ax1.twinx()
ax2.plot(df['b'], color='red')
fig.tight_layout()
plt.show()