《Python数据可视化之Matplotlib与Pyecharts》之K线
10.5.1 K线图及其参数配置K线图又称蜡烛图,股市及期货市场中的K线图的画法包含四个数据,即开盘价、最高价、最低价、收盘价,所有的k线都是围绕这四个指标展开,反映股票的状况。如果把每日的K线图放在一张纸上,就能得到日K线图,同样也可画出周K线图、月K线图。10.5.2 企业股票价格趋势分析下为了分析该企业股票价格的区域,绘制了股票价格的K线图。具体过程如下:1.导入options、Kline、
10.5.1 K线图及其参数配置
K线图又称蜡烛图,股市及期货市场中的K线图的画法包含四个数据,即开盘价、最高价、最低价、收盘价,所有的k线都是围绕这四个指标展开,反映股票的状况。如果把每日的K线图放在一张纸上,就能得到日K线图,同样也可画出周K线图、月K线图。
10.5.2 企业股票价格趋势分析
下为了分析该企业股票价格的区域,绘制了股票价格的K线图。具体过程如下:
1.导入options、Kline、Page、connect等包;
2.连接Hadoop集群,抽取股价表stocks数据;
3.配置K线图的相关参数,以及全局配置项;
4.展示股票价格趋势。
下面是实现上述步骤的Python代码:
# -*- coding: utf-8 -*-

#声明Notebook类型,必须在引入pyecharts.charts等模块前声明
from pyecharts.globals import CurrentConfig, NotebookType
CurrentConfig.NOTEBOOK_TYPE = NotebookType.JUPYTER_LAB
from pyecharts import options as opts
from pyecharts.charts import Kline, Page
from impala.dbapi import connect
#连接Hadoop数据库
v1 = []
v2 = []
conn = connect(host='192.168.1.7', port=10000, database='sales',auth_mechanism='NOSASL',user='root')
cursor = conn.cursor()
#读取Hadoop股价表数据
sql_num = "SELECT trade_date,open,high,low,close FROM stocks where year(trade_date)=2019 ORDER BY trade_date asc"
cursor.execute(sql_num)
sh = cursor.fetchall()
for s in sh:
v1.append([s[0]])
for s in sh:
v2.append([s[1],s[2],s[3],s[4]])
data = v2

def kline_markline() -> Kline:
c = (
Kline()
.add_xaxis(v1)
.add_yaxis(
"企业股票价格走势",
data,
markline_opts=opts.MarkLineOpts(
data=[opts.MarkLineItem(type_="max", value_dim="close")]
),
)
.set_global_opts(
xaxis_opts=opts.AxisOpts(is_scale=True),
yaxis_opts=opts.AxisOpts(
is_scale=True,
splitarea_opts=opts.SplitAreaOpts(
is_show=True, areastyle_opts=opts.AreaStyleOpts(opacity=1)
),
),
datazoom_opts=[opts.DataZoomOpts(pos_bottom="-2%")],
title_opts=opts.TitleOpts(title="企业股票价格趋势分析", subtitle="2019年股价走势"),
toolbox_opts=opts.ToolboxOpts(),
legend_opts=opts.LegendOpts(is_show=True)
)
)
return c
#第一次渲染时候调用load_javasrcript文件
kline_markline().load_javascript()
#展示数据可视化图表
kline_markline().render_notebook()
在Jupyter lab中运行上述代码,生成的K线图如图10-5所示。

图10-5 股票价格走势

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)