画K线图 kline1.py
# coding: utf-8 import os, sys from pyecharts import options as opts from pyecharts.charts import Kline if len(sys.argv) ==2: code= sys.argv[1] else: print('usage: kline1.py code') sys.exit(1) if len(code) !=6: print(' code length is 6') sys.exit(2) file1 = code +'.csv' file2 = code +'_1.html' if not os.path.exists(file1): print(file1 +' is not exists.') sys.exit(3) # 数据项: [open,close,low,high,volume] # (即:[开盘值,收盘值,最低值,最高值,成交量]) vlist = [] xlist = [] ylist = [] fp = open(file1,'r') fp.readline() # 跳过第1行表头: ,date,open,close,high,low,volume,code for line in fp: idx,date,open,close,high,low,volume,code = line.strip().split(',') xlist.append(date) vlist.append(volume) ylist.append([open,close,low,high]) print(str(len(xlist))) kline = Kline() kline.add_xaxis(xlist).add_yaxis("kline",ylist) kline.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()], title_opts=opts.TitleOpts(title="日K线图:{0}".format(code)), ) #kline.set_opts(mark_line_valuedim="close") kline.render(path=file2)
参考: pyecharts-1.1.0/example/kline_example.py