用一条线绘制每年的时间序列数据

2024-04-17

我有一个包含 20 多年股票数据的数据框。

Open    High    Low Close   Adj Close   Volume
Date                        
2001-01-02  1.062500    1.089286    1.040179    1.062500    0.930781    113078000
2001-01-03  1.035714    1.191964    1.031250    1.169643    1.024641    204268400
2001-01-04  1.295759    1.321429    1.200893    1.218750    1.067660    184849000
2001-01-05  1.209821    1.241071    1.147321    1.169643    1.024641    103089000
2001-01-08  1.209821    1.213170    1.138393    1.183036    1.036374    93424800

我想要的是在同一个图表中单独绘制每年(价格),从一月开始到十二月结束。

我尝试这样的事情,但情节一年又一年

  for year in range(2001,2019):
    aapl['Close'].loc[str(year)].plot(figsize=(18,8), label=str(year), secondary_y=True)
plt.legend()
plt.show()

正如斯科特所评论的,你可以根据dayofyear, and seaborn帮助您通过使用hue参数来分隔数据'Year'.

测试于python 3.12.0, pandas 2.1.1, matplotlib 3.8.0, seaborn 0.13.0

提取或创建附加数据

# Date is in the index, so reset
df = df.reset_index()

# verify column is a datetime dtype
df['Date'] = pd.to_datetime(df['Date'])

# extract the Year, which will be used for the color
df['Year'] = df.Date.dt.year

# extract the day of the year for the x-axis
df['DoY'] = df.Date.dt.day_of_year

情节与Axes-level method

fig, ax = plt.subplots(figsize=(8, 5))
sns.lineplot(data=df, x='DoY', y='Close', hue='Year', legend='full', ax=ax)
sns.move_legend(ax, bbox_to_anchor=(1, 0.5), loc='center left', frameon=False, ncols=3)

情节与Figure-level method

g = sns.relplot(kind='line', data=df, x='DoY', y='Open', hue='Year', legend='full', height=7, aspect=1)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

用一条线绘制每年的时间序列数据 的相关文章

随机推荐

  • 如何在QWebEngineView中指定用户代理

    我正在使用 PyQt5 在网页上实现自动化功能 PyQt5 中显示的页面与 Chrome 中显示的页面有很大不同 如果我要更改用户代理 我可以模仿 Chrome 的功能吗 如果是这样 我将如何更改以下示例中的用户代理 import sys
  • h:button 和 h:commandButton 之间的区别

    在 JSF 2 中 有什么区别h button and h commandButton
  • 在 Javascript 变量中存储密码有哪些安全隐患?

    我正在开发一个需要良好安全性的网络应用程序 在目前的设计中 许多用户操作需要用户重新发送密码 否则服务器将不得不以纯文本形式存储密码 至少暂时如此 许多用户交互是通过 AJAX 请求进行的 我不想让用户重新输入每个密码 而是想做这样的事情
  • 有谁知道即使页面已刷新,如何保留 Javascript 变量?

    Example 在主页中单击一个按钮 新 然后页面将使用 Javascript 在新窗口中打开新页面 调用重定向 Page 在主页中单击一个按钮 退出 然后页面然后会调用 确认退出 然后 closeChildWindows 关闭所有 在重定
  • 什么算作失败?

    假设我有一个伪 C 程序 For i 0 to 10 x a 2 x 5 next 30 FLOPS 的 FLOP 数量是 1 x 1 x 5 1 2 x 5 10 loop 吗 我很难理解什么是失败 请注意 指示我从何处获取 操作 计数
  • 在 PHP 中生成独特的组合

    我需要从给定的数据集 n 个数字 生成唯一的组合 每个组合都包含 r 值 基本上希望实施C n r n r n r PHP 中的公式 输入数据集 A B C D 并需要 3 个值的唯一组合 如下所示 C n r C 4 3 4 3 4 3
  • 如何在Java中使绘制的图像透明

    我让动画在我的 蛇克隆游戏 中发挥作用 但基于图片的问题是图像没有透明度 注意圆形图片的白色背景 编程方面 是否有解决方案能够使这些绘制的图像包含透明度 这是一张包含我的代码和程序输出的图片 附 顺便说一句 我决定粘贴直接链接而不是 IMG
  • Grails 命令对象:如何将 request.JSON 加载到其中?

    Question 有没有办法使用 request JSON 数据进行自动命令对象绑定 在我的 grails 控制器中给出这个简单的 Command 对象 class ProfileCommand int id String companyN
  • 从匿名类调用新定义的方法

    我实例化了一个匿名类的对象 并向其中添加了一个新方法 Date date new Date public void someMethod 我想知道是否可以从外部调用此方法 类似于 date someMethod 好问题 答案是否定的 您不能
  • 2015年如何从lfd安装mod_wsgi

    我如何从 lfd 网站安装 mod wsgi 因为它有轮扩展 每当我搜索如何在 wamp 上安装 mod wsgi 时 资源都会告诉我从该网站安装二进制文件 然后将 mod wsgi so 文件保留在我的 wamp 目录中 lfd 页面上有
  • 如何为nodejs生成调用图?

    跟进如何为给定的 JavaScript 生成调用图 https stackoverflow com questions 10182387 它被关闭了 因为它需要关注 只有一个问题 所以这是我的重点 如何为我的 Node js Javascr
  • Flex:获取自己的 SWF 文件名?

    有没有办法以编程方式确定我的类正在运行的 swf 文件名 Thanks Stage http livedocs adobe com flex 3 langref flash display Stage html has a 加载器信息 ht
  • 如何使用 --timid 标志来覆盖鼻子

    我想使用运行 nosetests with coverage 内德 巴切尔德 Ned Batchelder 的报道模块 http nedbatchelder com code coverage 但将 timid 标志传递给覆盖模块 有没有办
  • 如何轻松编写克隆方法?

    我有一个带有虚拟克隆新方法的基类 class A virtual A cloneNew const return new A 及其衍生物 class A1 public A virtual A1 cloneNew const return
  • 观察 NSUserDefaults 键的值更改

    我对保存在 NSUserdefaults 中的特定键的值变化感兴趣 然而 我所拥有的并不适合我 observeValueForKeyPath 不会被触发 更新 我想我已经发现了这个问题 如果我使用字符串 而不是使用定义的常量 那么它就会被触
  • 如何在 iOS 13 中以编程方式隐藏和显示状态栏?

    我制定了以下隐藏和再次显示状态栏的常用方法 它在 iOS 13 之前工作正常 但当我在 iOS 13 或更高版本的设备上运行它时 我遇到了崩溃 void showStatusBar BOOL show UIView statusBar UI
  • 如何在运输方式(后端)中添加自定义描述字段

    我想在运输方式下的运输区域页面中添加一个自定义字段 它将是一个文本输入 用户将能够添加自定义消息 我将在前端显示该消息 我注意到它将数据保存在wp woocommerce shipping zone methods没有任何额外列来保存数据的
  • Log4Net 或 NLog(或其他记录器)是否有办法以执行堆栈嵌套 XML 或 JSON 格式输出日志?

    Log4Net 或 NLog 或其他记录器 中是否有一种方法可以以执行堆栈嵌套 XML 或 JSON 格式输出日志 这样 if 函数A calls B 7 那个叫C something 它会输出类似以下内容
  • Django Rest Framework 中的视图集“创建”自定义分配值

    想设置一个自定义用户的用户名通过使用输入电子邮件 但在哪里进行自定义分配 在视图中 同时它也接收一个文件 模型 py class CustomUser AbstractUser avatar models ImageField max le
  • 用一条线绘制每年的时间序列数据

    我有一个包含 20 多年股票数据的数据框 Open High Low Close Adj Close Volume Date 2001 01 02 1 062500 1 089286 1 040179 1 062500 0 930781 1