K线图如何对接第3方数据18

首页 > 科技 > 大数据 > 正文 2021-06-08

发表自话题:k线图的柱子怎么看

HQChart使用教程30-K线图如何对接第3方数据18-如何绘制自定义柱子

数据格式nametypeDrawDraw.DrawTypeDraw.DrawData完整实例

使用自定义柱子数据结构可以快速绘制出柱子
效果图

前面的步骤和第3方指标替换一样, 通过网络协议回调,知道需要执行的指标, 替换自己的数据。这里就不说了, 不知道的看以下2个教程
HQChart使用教程30-K线图如何对接第3方数据1
HQChart使用教程30-K线图如何对接第3方数据5-指标数据

自定义柱子集合是做为一组输出变量, 填入到输出变量数组(outvar)中

数据格式

name

填’MULTI_BAR’ 固定

type

填 1 固定

Draw

柱子绘制数据

Draw.DrawType

固定 ‘MULTI_BAR’

Draw.DrawData

绘制的自定义柱子集合, 支持多组柱子集合
格式
{
Color:柱子颜色,
Width: 柱子宽度 , 缺省使用K线柱子宽度
Type: 0 实心 1空心 缺省使用实心
Point:[绘制柱子的点数组] }
单个Point数据结构:
{ Date:日期, Time: 时间(分时用,日线不需要), Value:Y轴值(柱子顶部/底部), Value2: Y轴值2(柱子底部/顶部) }
下面是绘制一组柱子实例

var point= { Color:'rgb(244,55,50)', //柱子颜色 //Type:1, Point: [ {Date:20190916, Value:15.5, Value2:0 }, //在20190916上画一个底部是0 顶部是15.5的柱子 {Date:20190917, Value:15.5, Value2:20 }, //在20190917上画一个底部是15.5 顶部是20的柱子 {Date:20190902, Value:10.5,Value2:0}, ] };

完整实例

K线图-3方数据-多柱子指标 //预加载下阿里云图片 WebFont.load({ custom: { families: ['iconfont'] } }); function getURLParams(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); var r = window.location.search.substr(1).match(reg); if (r != null) return decodeURI(r[2]); return null; } $(window).resize(resizeCanvas); function resizeCanvas() { var height= $(window).height(); var width = $(window).width(); var divKline=document.getElementById('kline'); divKline.style.top=0+'px'; divKline.style.left=0+'px'; divKline.style.width=(width)+'px'; divKline.style.height=(height)+'px'; divKline.JSChart.OnSize(); } function NetworkFilter(data, callback) { console.log('[NetworkFilter] data', data); if (data.Name=='APIScriptIndex::ExecuteScript') { var request=data.Request; if (request.Data.indexname=='多柱子指标') { var hqchart=data.HQChart; // var kData=hqchart.ChartPaint[0].Data; //var closeLine={name:'收盘价线', type:0, data:kData.GetClose() }; var bar= { name:'MULTI_BAR', type:1, Draw: { DrawType:'MULTI_BAR', DrawData:[] } //绘制柱子数组 }; //第一组柱子 var point= { Color:'rgb(244,55,50)', //颜色 //Type:1, Point: [ {Date:20190916, Value:15.5, Value2:0 }, {Date:20190917, Value:15.5, Value2:10 }, {Date:20190902, Value:10.5,Value2:0}, //{Date:20190917, Value:15.05}, //{Date:20190916, Value:15.5} ] }; //第2组柱子 var point2= { Color:'rgb(0,55,50)', //颜色 Point: [ { Date:20190902, Value:15.5,Value2:0}, { Date:20190903, Value:15.33,Value2:0}, { Date:20190904, Value:15.21,Value2:20} , { Date:20190906, Value:15.05,Value2:0}, { Date:20190909, Value:15.5,Value2:0} ] }; bar.Draw.DrawData.push(point2); bar.Draw.DrawData.push(point); var apiData= { code:0, stock:{ name:hqchart.Name, symbol:hqchart.Symbol }, //outdata: { date:kData.GetDate() , outvar:[closeLine,line2] } outdata: { outvar:[bar] } }; data.PreventDefault=true; console.log('[NetworkFilter::NetworkFilter] apiData ', apiData); callback(apiData); } } } $(function () { var debug=getURLParams('debug'); if (debug==1) { var vConsole = new VConsole(); console.log('create VConsole'); } var symbol=getURLParams('symbol'); if (symbol==null) symbol='000001.sz'; // 创建股票K线图 var chart=JSChart.Init(document.getElementById('kline')); var height= $(window).height(); var width = $(window).width(); var divKline=document.getElementById('kline'); divKline.style.width=width+'px'; divKline.style.height=height+'px'; chart.OnSize(); var option= { Type:'历史K线图', //Type:'历史K线图横屏', Windows: [ { Index:'MA', }, { Index:"多柱子指标", API: { Name:'多柱子指标', Script:null, Args:null, Url:'http://127.0.0.1:18080/api/jsindex' } }, ], //窗口指标 Symbol:symbol, IsAutoUpdate:true, //是自动更新数据 AutoUpdateFrequency:3000, //数据更新频率 //TradeIndex: {Index:'交易系统-BIAS'}, //交易系统 NetworkFilter:NetworkFilter, IsShowRightMenu:true, //右键菜单 IsShowCorssCursorInfo:true, //是否显示十字光标的刻度信息 CorssCursorInfo:{ Left:1, Right:1, Bottom:1, IsShowCorss:true, PressTime:300 }, //十字光标刻度设置 KLine: { DragMode:1, //拖拽模式 0 禁止拖拽 1 数据拖拽 2 区间选择 Right:1, //复权 0 不复权 1 前复权 2 后复权 Period:0, //周期 0 日线 1 周线 2 月线 3 年线 MaxRe:1000, //数据个数 MaxRe:6, PageSize:90, //一屏显示多少数据 IndexTreeApiUrl:"https://opensourcecache.zealink.com/cache/hqh5/index/commonindextree.json", //指标树下载地址 //Info:["互动易","大宗交易",'龙虎榜',"调研","业绩预告","公告"], //信息地雷 //Info:["公告","互动易","调研"], //信息地雷 InfoPosition:1, //显示位置 KLineDoubleClick:false, //双击分钟走势图 IsShowTooltip:true, //是否显示K线提示信息 //FirstShowDate:20180401, //首屏显示的起始日期 DrawType:0, }, KLineTitle: //标题设置 { IsShowName:true, //不显示股票名称 IsShowSettingInfo:true //不显示周期/复权 }, Border: //边框 { Left:5, //左边间距 Right:60, //右边间距 Bottom:25, Top:25 }, Language:"CN", //英文 'EN' 中文:'CN' ExtendChart: //扩展图形 [ {Name:'画图工具',Top:25} ], Frame: //子框架设置 (Height 窗口高度比例值) [ { SplitCount:5, //Height:4, IsShowLeftText:false, IsShowRightText:true }, { SplitCount:3, //Height:2, IsShowLeftText:false, IsShowRightText:true }, { SplitCount:2, //Height:2, IsShowLeftText:false, IsShowRightText:true } ], Overlay: [ //{Symbol:'000001.sh', DrawType:0}, //{Symbol:'002415.sz', DrawType:0} ], } var windowHeight= $(window).height(); var windowWidth = $(window).width(); if (windowWidthName:'KLineTooltip' }]; //开启手机端tooltip //option.ExtendChart=null; option.IsCorssOnlyDrawKLine=true; option.CorssCursorTouchEnd=true; for(var i in option.Windows) { option.Windows[i].Modify=false; option.Windows[i].Change=false; } } chart.SetOption(option); resizeCanvas(); })

如果还有问题可以加交流QQ群: 950092318

HQChart代码地址
地址:github.com/jones2000/HQChart

标签组:[大数据

上一篇k线图柱子表示什么,谁能解释下K线图,比如柱子的宽度代表什么,上下引线代表什么

下一篇阳柱阴柱在K线图中分别代表什么

相关阅读

相同话题文章

推荐内容

热门阅读