网络编程
位置:首页>> 网络编程>> Python编程>> python实现股票历史数据可视化分析案例

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

作者:荣仔!最靓的仔!  发布时间:2021-12-20 00:29:10 

标签:python,股票,可视化

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

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实现股票历史数据可视化分析案例

来源:https://blog.csdn.net/IT_charge/article/details/113761938

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com