此JSON用于配置自定义绘图函数Chart()
的图表设置信息,图表库采用Highcharts。此处仅列出几个基本配置字段。
平台扩展字段。设置为true时,使用Highstocks图表;设置为false时,使用Highcharts图表。 __isStock string
{
layout: 'single', // 不参与分组,单独显示,默认为分组模式 'group'
height: 300, // 指定高度
}
extension JSON 图表标题 title string X轴配置。 xAxis JSON Y轴配置。 yAxis JSON 图表数据系列。 series JSON
简单的绘图示例:
// 在JavaScript语言中,chart是一个对象。在使用Chart函数之前,需要先声明一个用于配置图表的对象变量chart
var chart = {
// 该字段标记图表是否为股票图表,可以尝试改为false运行查看效果
__isStock: true,
// 缩放工具
tooltip: {xDateFormat: '%Y-%m-%d %H:%M:%S, %A'},
// 标题
title : { text : '差价分析图'},
// 选择范围
rangeSelector: {
buttons: [{type: 'hour',count: 1, text: '1h'}, {type: 'hour',count: 3, text: '3h'}, {type: 'hour', count: 8, text: '8h'}, {type: 'all',text: 'All'}],
selected: 0,
inputEnabled: false
},
// 坐标轴横轴(X轴),当前设置的类型为时间
xAxis: { type: 'datetime'},
// 坐标轴纵轴(Y轴),默认数值随数据大小自动调整
yAxis : {
// 标题
title: {text: '差价'},
// 是否启用右侧纵轴
opposite: false
},
// 数据系列,该属性保存各个数据系列(线、K线图、标签等)
series : [
// 索引为0,data数组内存储该索引系列的数据
{name : "line1", id : "线1,buy1Price", data : []},
// 索引为1,设置了dashStyle:'shortdash',即设置为虚线
{name : "line2", id : "线2,lastPrice", dashStyle : 'shortdash', data : []}
]
}
function main(){
// 调用Chart函数,初始化图表
var ObjChart = Chart(chart)
// 清空图表
ObjChart.reset()
while(true){
// 获取本次轮询的时间戳(毫秒级时间戳),用于确定写入图表X轴的位置
var nowTime = new Date().getTime()
// 获取行情数据
var ticker = _C(exchange.GetTicker)
// 从行情数据的返回值中获取买一价
var buy1Price = ticker.Buy
// 获取最后成交价,为避免两条线重合,加1处理
var lastPrice = ticker.Last + 1
// 使用时间戳作为X值,买一价作为Y值,传入索引0的数据序列
ObjChart.add(0, [nowTime, buy1Price])
// 同上
ObjChart.add(1, [nowTime, lastPrice])
Sleep(2000)
}
}
{@fun/Log/Chart Chart}