金融数据可视化实现

news/2024/12/25 10:28:41 标签: 信息可视化

一、设计题目

金融数据可视化

二、设计目的

使学生掌握用Pandas第三方库数据计算、数据分析的知识与能力。Pandas是专门用于数据分析的库,其提供的read_excel()方法可以方便的读取xlsx格式的文件中的数据到Pandas中的DataFrame中。

DataFrame.plot(kind='line'),可以通过修改kind参数值为“line”、“bar”、“barh”、“hist” “pie”、“scatter”绘制线型图、柱型图、直方图等不同类型的图。

三、设计要求

利用Matplotlib对金融数据进行可视化(图表颜色不限制)

1.读文件“金融数据.xlsx”中股票数据绘制2020年9月收盘价(‘表格中Close数据)线型图,为每个数据点加标识“*”,设置x轴刻度标签为日期。

2. 绘制每天成交量(表格中Volume数据)的柱形图。

import pandas as pd
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties

# 设置中文字体
plt.rcParams['font.sans-serif'] = ['SimHei']  # 使用黑体
plt.rcParams['axes.unicode_minus'] = False    # 解决负号显示问题

# 读取Excel文件
file_path = '金融数据.xlsx'
df = pd.read_excel(file_path)

# 确保日期列是 datetime 类型
df['Date'] = pd.to_datetime(df['Date'])

# 过滤2020年9月的数据
df_september_2020 = df[(df['Date'].dt.year == 2020) & (df['Date'].dt.month == 9)]

# 绘制2020年9月的收盘价线型图
plt.figure(figsize=(10, 6))
plt.plot(df_september_2020['Date'], df_september_2020['Close'], marker='*', linestyle='-')
plt.title('2020年9月收盘价')
plt.xlabel('日期')
plt.ylabel('收盘价')
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties

# 设置中文字体
plt.rcParams['font.sans-serif'] = ['SimHei']  # 使用黑体
plt.rcParams['axes.unicode_minus'] = False    # 解决负号显示问题

# 读取Excel文件
file_path = '金融数据.xlsx'
df = pd.read_excel(file_path)

# 确保日期列是 datetime 类型
df['Date'] = pd.to_datetime(df['Date'])

# 过滤2020年9月的数据
df_september_2020 = df[(df['Date'].dt.year == 2020) & (df['Date'].dt.month == 9)]

# 绘制2020年9月的成交量柱形图
plt.figure(figsize=(10, 6))
plt.bar(df_september_2020['Date'], df_september_2020['Volume'])
plt.title('2020年9月每天成交量')
plt.xlabel('日期')
plt.ylabel('成交量')
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()


http://www.niftyadmin.cn/n/5798992.html

相关文章

IDEA自己常用的几个快捷方式(自己的习惯)

TOC 背景 换工作了, 新的IDEA, 又要重新设置自己的快捷方式了. 灵感 1.这些个性话的配置应该是可以导出的. 然后在新的IDEA直接导入就行了, 感觉应该是有这个功能. 就是这个文件: <keymap version"1" name"Personal KeyMap" parent"$default…

C++23新特性解析:[[assume]]属性

1. 引言 在C的发展历程中&#xff0c;性能优化一直是一个核心主题。C23引入的[[assume]]属性为开发者提供了一个强大的工具&#xff0c;允许我们直接向编译器传达程序的不变量&#xff08;invariant&#xff09;&#xff0c;从而实现更好的代码优化。 1.1 为什么需要assume&a…

JAVA 查询对象大小 查询当前JVM堆内存

‌init‌&#xff1a;表示JVM在启动时从操作系统请求的初始内存容量&#xff08;以字节为单位&#xff09;。这个值在运行过程中可能会变化&#xff0c;因为JVM可能会向操作系统请求更多的内存&#xff0c;也可能会释放内存给系统‌。 ‌used‌&#xff1a;表示当前已经使用的…

vim多窗格

vim打开文件分为三个阶段&#xff1a;buffer、window与tab buffer就是在同一个界面打开的文件window就是使用水平分割与垂直分割的窗口tab则是可以是上述两者的总集合 buffer :e filename在已打开文件的界面中再打开一个新文件&#xff0c;显示这个新文件&#xff0c;原文件被隐…

前端对页面数据进行缓存

页面录入信息&#xff0c;退出且未提交状态下&#xff0c;前端对页面数据进行存储 前端做缓存&#xff0c;一般放在local、session和cookies里面&#xff0c;但是都有大小限制&#xff0c;如果页面东西多&#xff0c;比如有上传的图片、视频&#xff0c;浏览器会抛出一个Quota…

41 stack类与queue类

目录 一、简介 &#xff08;一&#xff09;stack类 &#xff08;二&#xff09;queue类 二、使用与模拟实现 &#xff08;一&#xff09;stack类 1、使用 2、OJ题 &#xff08;1&#xff09;最小栈 &#xff08;2&#xff09;栈的弹出压入序列 &#xff08;3&#xf…

Vscode GStreamer插件开发环境配置

概述 本教程使用vscode和Docker搭建Gstreamer2.24的开发环境&#xff0c;可以用于开发调试Gstreamer程序或者自定义插件开发。 1. vscode依赖插件 C/C Extension Pack&#xff08;ms-vscode.cpptools-extension-pack&#xff09;&#xff1a;该插件包包含一组用于 Visual St…

如何完全剔除对Eureka的依赖,报错Cannot execute request on any known server

【现象】 程序运行报错如下&#xff1a; com.netflix.discovery.shared.transport.TransportException报错Cannot execute request on any known server 【解决方案】 &#xff08;1&#xff09;在Maven工程中的pom去掉Eureka相关的引用&#xff08;注释以下部分&#xff0…