python-3.x - 如何使用 for 循环并排绘制图表

标签 python-3.x pandas matplotlib

我有以下代码:

import pandas as pd
from pandas import datetime
from pandas import DataFrame as df
import matplotlib
from pandas_datareader import data as web
import matplotlib.pyplot as plt
import datetime
import numpy as np

stocks = 'GE','F' #<-- In this case there are just 2 symbols but this could be more 
start = datetime.date(2000,1,1)
end = datetime.date.today()

data = web.DataReader(stock, 'yahoo',start, end)

for stock in stocks:
    data.plot(y='Close')
plt.subplot(1,1,2) #<-- Trouble here

这是我的问题。如何在 forloop 中并排绘制所有符号?

最佳答案

您可以使用上面的代码并指定 figsize范围。

fig, ax = plt.subplots(1, len(stocks), figsize=(20, 10))

如果你希望所有的图都在同一行,只需修改 figsize 的第一个参数这是包含子图的框的水平轴的长度。

例如,如果您希望每个图都是 10x10 :
fig, ax = plt.subplots(1, len(stocks), figsize=(len(stocks)*10, 10))

关于python-3.x - 如何使用 for 循环并排绘制图表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59829928/

相关文章:

python - imp.get_suffixes() 已弃用,如何修复?

python - 将 x 行子进程标准输出写入文件

python - 拆分 pandas 数据框中字符串中的第 n 个元素

python - 值错误: invalid fill value with a <class 'pandas.core.frame.DataFrame' >

python - 如何使用python从网站中提取带有匹配词的html链接

python - 解包 n 级嵌套列表

python - 给定两者时将数字转换为十进制

python - 如何跨子图添加层次轴以标记组?

python - matplotlib barh 计划工作时间与实际工作时间

python - 如何使用 Matplotlib 或 python 中的其他库设置轴间隔范围