BotVS开发基础—2.5 绘制图表
代码
import time
import math
def main():
chart = { # 用于初始化 图表的对象
'title': {'text': "line数值触发 plotLines 值"}, # 图表标题
'yAxis': { # Y轴 相关 设置
'plotLines': [{ # 垂直于Y轴的 水平线, 用作触发线, 是一个结构数组, 可以设置多条触发线。
'value': 0, # 触发线的值,设置多少 这条线就在相应的数值位置显示。
'color': 'red', # 设置触发线的颜色
'width': 2, # 宽度
'label': { # 显示的标签
'text': '触发值', #标签文本
'align': 'center' #标签位置 居中
},
}],
},
'xAxis': {'type': "datetime"}, # X轴相关设置, 这里设置类型是 时间轴
'series': [{'name': "sin", 'type': "spline", 'data': []},
{'name': "cos", 'type': "spline", 'data': []}
] # 这个是比较重要的数据系列,可以设置多个数据系列,根据数组索引控制
};
pi = 3.1415926535897; # 圆周率
itime = 0; # 用于记录时间戳的变量
angle = 0; # 角度
y = 0; # 坐标y值 , 用于接收 正弦值、余弦值
objChart = Chart(chart); # 调用API 接口 用chart 对象初始化 图表
objChart.reset(); # 初始清空图表
chart['yAxis']['plotLines'][0]['value'] = 1; # 设置触发线的值为1
while(true): # 循环
itime = time.time(); # 获取当前时刻的时间戳
y = math.sin(angle * 2 * pi / 360); # 每 500ms 角度 angle 增加 5 度,计算正弦值。
objChart.add(0, [itime, y]); # 把计算出来的y 值写入图表 相应索引的数据系列 add 函数第一个参数 为 指定的索引
y = math.cos(angle * 2 * pi / 360); # 计算余弦值
objChart.add(1, [itime, y]);
objChart.update(chart); # 增加新数据后,更新图表。
angle += 5; # 增加5度
Sleep(5000); # 暂停5秒 ,一面画图太频繁,数据增长过快。
返回

BotVS开发基础—2.5 绘制图表的更多相关文章
- BotVS开发基础—2.11 API绘制图表
代码 import time chart = { '__isStock': True, # 标记是否为一般图表,有兴趣的可以改成 false 运行看看. 'tooltip': {'xDateForma ...
- BotVS开发基础—Python API
代码 import json def main(): # python API列表 https://www.botvs.com/bbs-topic/443 #状态信息 LogStatus(" ...
- BotVS开发基础—2.7 指标MACD
代码 def main(): while true: records = _C(exchange.GetRecords); # 获取K线数据 ,默认为策略界面设置的K线周期, _C 是一个容错的内置函 ...
- BotVS开发基础—2.7 指标MA
代码 #计算一小时 MA5均线 # 时间 2017-06-29 00:00:00 -2017-06-30 00:00:00 1小时 实盘级Tick # 平台 OCKCoin BTC def main( ...
- BotVS开发基础—2.5 策略交互
一.代码部分 isOpen = False; # 是否 开仓 price = 0; # 全局变量 价格 amount = 0; # 全局变量 下单量 def exec_command(command) ...
- BotVS开发基础—2.5 状态信息显示表格
代码 import json def main(): #part 1 bol = True num = 10; # str = "ABC"; # 字符串 list = [1, 2, ...
- BotVS开发基础—2.4 获取订单、取消订单、获取未完成订单
代码 RetryDelay = 1500; def CancelPendingOrders(exch, orderType): # 取消所有未完成的挂单, 参数1 交易所 参数2 类型 global ...
- BotVS开发基础—2.3 下市价单 交易
代码 def main(): ticker = exchange.GetTicker(); Log("初始账户信息:", exchange.GetAccount()); # 用于对 ...
- BotVS开发基础—2.2 下限价单 交易
代码 import json def main(): Log("ORDER_STATE_PENDING:", ORDER_STATE_PENDING, ", ORDER_ ...
随机推荐
- Ambari安装之部署本地库(镜像服务器)(二)
部署本地库(镜像服务器) (1)下载HortWorks官网上的3个库到本地(也可以在线下载,但是速度会很慢) 我们先把hortworks官网上需要下载的3个库下载到本地(这个还是需要很长时间的,当然你 ...
- 配置HTTPS服务
环境为CentOS 7.3.httpd2.4.6 一 搭建证书 说明: CA 主机为192.168.29.3 client主机为 192.168.29.100 1 生成私钥 [root@centos7 ...
- 【Mysql】Mysql关键字
ADD ALL ALTER ANALYZE AND AS ASC ASENSITIVE BEFORE BETWEEN BIGINT BINARY BLOB BOTH BY CALL CASCADE C ...
- 使用pdfbox分页保存pdf为图片
一.背景 pdfbox作为Apache开源的PDF操作工具,允许创建新的PDF文档,操作现有文档,以及从文档中提取内容的能力.Apache PDFBox还包括一些命令行实用工具.本文楼主主要介绍其中的 ...
- ctf中常见注入题源码及脚本分析
1.代码审计发现 这里没有用escape_string,因此存在注入. function show($username){ global $conn; $sql = "select role ...
- 浅谈jQuery Pagination Ajax 分页插件的使用
插件介绍 此插件是jQuery的ajax分页插件.分页切换时无刷新也无延迟,因为是一次性加载的.如果你用到此插件作分页的时候,涉及到的数据量大,建议不要使用此插件,因为加载慢会导致用户体验不好! 插件 ...
- C#设计模式总结(转)
一.引言 经过这段时间对设计模式的学习,自己的感触还是很多的,因为我现在在写代码的时候,经常会想想这里能不能用什么设计模式来进行重构.所以,学完设计模式之后,感觉它会慢慢地影响到你写代码的思维方式.这 ...
- VMware的安装和使用
注:内容系兄弟连Linux教程(百度传课:史上最牛的Linux视频教程)的学习笔记. VMware的安装和使用 1. 虚拟机的安装 这里安装虚拟机VMware10,下载安装程序,双击安装-->为 ...
- VS2013+MFC串口控件的简单上位机
因为做东西,正好用到这里.所以就上传了文件分享一下. 利用VS带的MFC库,用起来还是比较方便的.空间的程序构架都是自动生成的,具体的程序自己加进去就行. 里面有整个的工程 还带有一个生成的EXE文件 ...
- 【新发现】不用苹果开发账号就能申请ios证书真机调试
虽然xcode现在可以免证书进行测试了,但众多跨平台开发者,如果还没注册苹果开发者账号. 想安装到自己非越狱手机测试是无能为力了. 不过新技术来了,只需要普通免费的苹果账号无需付费成为开发者就可以申请 ...