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


Posted in Python onJune 10, 2021

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

1 数据预处理

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

import pandas as pd
import csv
df = pd.read_csv("/home/kesci/input/maotai4154/maotai.csv")

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

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

df_high_low = df[['date','high','low']]

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

1.3 数据类型转换

df_high_low_array = np.array(df_high_low)
df_high_low_list =df_high_low_array.tolist()

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

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

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)

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

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

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

2 pyecharts实现数据可视化

2.1 导入库

import pyecharts.options as opts
from pyecharts.charts import Line

2.2 初始化画布

Line(init_opts=opts.InitOpts(width="1200px", height="600px"))

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

.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="最高点"),
            ]
        ),
    )
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代码并下载

.render("HTML名字填这里.html")

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

2.5 完整代码展示

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 结果展示

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

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

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

到此这篇关于python实现股票历史数据可视化分析案例的文章就介绍到这了,更多相关python股票数据可视化内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python自动化测试工具Splinter简介和使用实例
May 13 Python
深入解析Python中的上下文管理器
Jun 28 Python
Python3.6正式版新特性预览
Dec 15 Python
Python3解决棋盘覆盖问题的方法示例
Dec 07 Python
python读文件保存到字典,修改字典并写入新文件的实例
Apr 23 Python
Python模拟登录的多种方法(四种)
Jun 01 Python
OpenCV+python手势识别框架和实例讲解
Aug 03 Python
有关Python的22个编程技巧
Aug 29 Python
Python3+Pycharm+PyQt5环境搭建步骤图文详解
May 29 Python
python获取全国城市pm2.5、臭氧等空气质量过程解析
Oct 12 Python
Python如何使用paramiko模块连接linux
Mar 18 Python
Keras之自定义损失(loss)函数用法说明
Jun 10 Python
Python如何识别银行卡卡号?
使用python+pygame开发消消乐游戏附完整源码
Python数据可视化之基于pyecharts实现的地理图表的绘制
python使用PySimpleGUI设置进度条及控件使用
python3+PyQt5+Qt Designer实现界面可视化
Django使用echarts进行可视化展示的实践
教你如何使用Python Tkinter库制作记事本
Jun 10 #Python
You might like
phpmyadmin 访问被拒绝的真实原因
2009/06/15 PHP
PHP中file_exists与is_file,is_dir的区别介绍
2012/09/12 PHP
Android ProgressBar进度条和ProgressDialog进度框的展示DEMO
2013/06/19 PHP
PHP实现多图片上传类实例
2014/07/26 PHP
PHP使用array_multisort对多个数组或多维数组进行排序
2014/12/16 PHP
WordPress中用于获取及自定义头像图片的PHP脚本详解
2015/12/17 PHP
收藏Javascript中常用的55个经典技巧
2007/08/12 Javascript
字段太多jquey快速清空表单内容方法
2014/08/21 Javascript
AngularJS使用ngOption实现下拉列表的实例代码
2016/01/23 Javascript
原生javascript实现分享到朋友圈功能 支持ios和android
2016/05/11 Javascript
Vue.js动态组件解析
2016/09/09 Javascript
微信公众号-获取用户信息(网页授权获取)实现步骤
2016/10/21 Javascript
vue开发心得和技巧分享
2016/10/27 Javascript
关于webuploader插件使用过程遇到的小问题
2016/11/07 Javascript
JavaScript 限制文本框不可输入英文单双引号的方法
2016/12/20 Javascript
Bootstrap表格使用方法详解
2017/02/17 Javascript
JS简单生成随机数(随机密码)的方法
2017/05/11 Javascript
vue2.0开发入门笔记之.vue文件的生成和使用
2017/09/19 Javascript
vue结合Echarts实现点击高亮效果的示例
2018/03/17 Javascript
Vue模拟数据,实现路由进入商品详情页面的示例
2018/08/31 Javascript
JS Math对象与Math方法实例小结
2019/07/05 Javascript
ionic2.0双击返回键退出应用
2019/09/17 Javascript
layui: layer.open加载窗体时出现遮罩层的解决方法
2019/09/26 Javascript
微信小程序pinker组件使用实现自动相减日期
2020/05/07 Javascript
Vue中watch、computed、updated三者的区别及用法
2020/07/27 Javascript
Array.filter中如何正确使用Async
2020/11/04 Javascript
Vue 解决在element中使用$notify在提示信息中换行问题
2020/11/11 Javascript
vue项目配置 webpack-obfuscator 进行代码加密混淆的实现
2021/02/26 Vue.js
[48:12]Secret vs Optic Supermajor 胜者组 BO3 第三场 6.4
2018/06/05 DOTA
Python 创建新文件时避免覆盖已有的同名文件的解决方法
2018/11/16 Python
keras读取训练好的模型参数并把参数赋值给其它模型详解
2020/06/15 Python
欧洲最大的品牌水上运动服装和设备在线零售商:Wuituit Outlet
2018/05/05 全球购物
巴西儿童时尚购物网站:Dinda
2019/08/14 全球购物
理财学专业自荐书
2014/06/28 职场文书
中学生检讨书范文
2014/11/03 职场文书
MySQL root密码的重置方法
2021/04/21 MySQL