前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python实现股票历史数据可视化分析

python实现股票历史数据可视化分析

作者头像
荣仔_最靓的仔
发布2021-09-07 17:11:18
1.5K0
发布2021-09-07 17:11:18
举报

投资有风险,选择需谨慎。 股票交易数据分析可直观股市走向,对于如何把握股票行情,快速解读股票交易数据有不可替代的作用!

目录

1 数据预处理

1.1 股票历史数据csv文件读取

1.2 关键数据——在csv文件中选择性提取“列”

1.3 数据类型转换

1.4 数据按列提取并累加性存入列表

2 pyecharts实现数据可视化

2.1 导入库

2.2 初始化画布

2.3 根据需要传入关键性数据并画图

2.4 将生成的文件形成HTML代码并下载

2.5 完整代码展示

3 结果展示


1 数据预处理

1.1 股票历史数据csv文件读取

代码语言:javascript
复制
import pandas as pd
import csv
代码语言:javascript
复制
df = pd.read_csv("/home/kesci/input/maotai4154/maotai.csv")

1.2 关键数据——在csv文件中选择性提取“列”

代码语言:javascript
复制
df_high_low = df[['date','high','low']]

1.3 数据类型转换

代码语言:javascript
复制
df_high_low_array = np.array(df_high_low)
df_high_low_list =df_high_low_array.tolist()

1.4 数据按列提取并累加性存入列表

代码语言:javascript
复制
price_dates, heigh_prices, low_prices = [], [], []
for content in zip(df_high_low_list):
    price_date = content[0][0]
    heigh_price = content[0][1]
    low_price = content[0][2]
    price_dates.append(price_date)
    heigh_prices.append(heigh_price)
    low_prices.append(low_price)

2 pyecharts实现数据可视化

2.1 导入库

代码语言:javascript
复制
import pyecharts.options as opts
from pyecharts.charts import Line

2.2 初始化画布

代码语言:javascript
复制
Line(init_opts=opts.InitOpts(width="1200px", height="600px"))

2.3 根据需要传入关键性数据并画图

代码语言:javascript
复制
    .add_yaxis(
        series_name="最低价",
        y_axis=low_prices,
        markpoint_opts=opts.MarkPointOpts(
            data=[opts.MarkPointItem(value=-2, name="周最低", x=1, y=-1.5)]
        ),
        markline_opts=opts.MarkLineOpts(
            data=[
                opts.MarkLineItem(type_="average", name="平均值"),
                opts.MarkLineItem(symbol="none", x="90%", y="max"),
                opts.MarkLineItem(symbol="circle", type_="max", name="最高点"),
            ]
        ),
    )
代码语言:javascript
复制
tooltip_opts=opts.TooltipOpts(trigger="axis"),
toolbox_opts=opts.ToolboxOpts(is_show=True),
xaxis_opts=opts.AxisOpts(type_="category", boundary_gap=True)

2.4 将生成的文件形成HTML代码并下载

代码语言:javascript
复制
.render("HTML名字填这里.html")

2.5 完整代码展示

代码语言:javascript
复制
import pyecharts.options as opts
from pyecharts.charts import Line

(
    Line(init_opts=opts.InitOpts(width="1200px", height="600px"))
    .add_xaxis(xaxis_data=price_dates)
    .add_yaxis(
        series_name="最高价",
        y_axis=heigh_prices,
        markpoint_opts=opts.MarkPointOpts(
            data=[
                opts.MarkPointItem(type_="max", name="最大值"),
                opts.MarkPointItem(type_="min", name="最小值"),
            ]
        ),
        markline_opts=opts.MarkLineOpts(
            data=[opts.MarkLineItem(type_="average", name="平均值")]
        ),
    )
    .add_yaxis(
        series_name="最低价",
        y_axis=low_prices,
        markpoint_opts=opts.MarkPointOpts(
            data=[opts.MarkPointItem(value=-2, name="周最低", x=1, y=-1.5)]
        ),
        markline_opts=opts.MarkLineOpts(
            data=[
                opts.MarkLineItem(type_="average", name="平均值"),
                opts.MarkLineItem(symbol="none", x="90%", y="max"),
                opts.MarkLineItem(symbol="circle", type_="max", name="最高点"),
            ]
        ),
    )
    .set_global_opts(
        title_opts=opts.TitleOpts(title="茅台股票历史数据可视化", subtitle="日期、最高价、最低价可视化"),
        tooltip_opts=opts.TooltipOpts(trigger="axis"),
        toolbox_opts=opts.ToolboxOpts(is_show=True),
        xaxis_opts=opts.AxisOpts(type_="category", boundary_gap=True),
    )
    .render("everyDayPrice_change_line_chart2.html")
)

3 结果展示


感谢阅读

END

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-02-08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 数据预处理
    • 1.1 股票历史数据csv文件读取
      • 1.2 关键数据——在csv文件中选择性提取“列”
        • 1.3 数据类型转换
          • 1.4 数据按列提取并累加性存入列表
          • 2 pyecharts实现数据可视化
            • 2.1 导入库
              • 2.2 初始化画布
                • 2.3 根据需要传入关键性数据并画图
                  • 2.4 将生成的文件形成HTML代码并下载
                    • 2.5 完整代码展示
                      • 感谢阅读
                  • 3 结果展示
                  • END
                  相关产品与服务
                  文件存储
                  文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档