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_ ...
随机推荐
- React Native App设置&Android版发布
React Native系列 <逻辑性最强的React Native环境搭建与调试> <ReactNative开发工具有这一篇足矣> <解决React Native un ...
- Jenkins: 执行 PowerShell 命令
Jenkins 默认是不支持执行 PowerShell 命令的,需要安装插件才能完成这样的任务.本文将介绍 Jenkins PoserShell 插件的基本用法和常见问题. 安装 PowerShell ...
- 第2章 rsync(一):基本命令和用法
本文目录: 2.1 说在前面的话 2.2 rsync同步基本说明 2.3 rsync三种工作方式 2.4 选项说明和示例 2.4.1 基础示例 2.4.2 "--exclude"排 ...
- Java类加载机制、类加载器和反射机制-思维导图
参考文献: 1. <深入理解JVM虚拟机>
- ES6模板字面量
前面的话 JS 的字符串相对其他语言来说功能总是有限的,事实上,ES5中一直缺乏许多特性,如多行字符串.字符串格式化.HTML转义等.ES6通过模板字面量的方式进行了填补,模板字面量试着跳出自己JS已 ...
- oracle-sql入门练习及答案
1,通过命令行方式打开sqlplus2,执行登录命令sqlplus scott/scott@192.168.248.129/orcl3进行sqlplus命令测试Set time onSet pages ...
- (转)Linux修改SSH登录欢迎语
场景:感觉这样做挺个性的,做个记录! 1 Linux修改SSH的欢迎语 众所周知,Linux系统并没有像Windows一样自带远程桌面连接,虽然可以通过后期安装VNC之类的软件来弥补这个缺点,但用了L ...
- 微信小程序开发基础知识总结
微信小程序在无论在功能.文档及相关支持方面,都是优于前面几种微信账号类型,它提供了很多原生程序才有的接口,使得我们的小程序在很多方面突破H5页面应用的限制,更加接近原生程序的功能,因此微信小程序具有很 ...
- dubbo-zookeeper(续)
本篇为继上一篇的续篇,主要内容分为以下几点: 1.zookeeper集群 2.web管理平台 3.dubbo配置说明 接下来我们开始继续吧. 一.zookeeper集群 顾名思义也就是多台zookee ...
- unable to create …
问题描述: 在新建Android Application时会出现unable to create the selected property page 解决方法: 将用户PATH路径中的jdk路径放到 ...