HQChart使用教程37 - 如何在uni-app创建k线图 app

  • 插件目录
  • 创建步骤
    • 1. 拷贝插件到工程中
    • 2. 创建一个page页 在page页中
    • 3.运行到模拟器
  • 通过uniapp下载hqchart插件
    • 安装
    • 使用
  • 特别感谢 秋云
  • 交流QQ群: 950092318
  • HQChart代码地址

插件目录

创建步骤

1. 拷贝插件到工程中

创建一个空的uni-app 工程, 把wechathqchart 目录拷贝到工程中。
例子里 我建了一个hqchart.uniapp的目录, 把插件的文件拷贝到这个目录里

2. 创建一个page页 在page页中

import umychart.wechat.3.0.js
创建一个画布元素
绑定手势事件

代码如下:

<template><view><view> <canvas id="kline" canvas-id='kline' class='kline' style="width: 400px; height: 600px" @touchstart="KLineTouchStart" @touchmove='KLineTouchMove' @touchend='KLineTouchEnd' ></canvas>  </view><view class="button-sp-area"><button class="mini-btn" type="default" size="mini" @click="ChangeKLinePeriod(PERIOD_ID.KLINE_DAY_ID)">日线</button><button class="mini-btn" type="default" size="mini" @click="ChangeKLinePeriod(PERIOD_ID.KLINE_WEEK_ID)">周线</button><button class="mini-btn" type="default" size="mini" @click="ChangeKLinePeriod(PERIOD_ID.KLINE_MINUTE_ID)">1分钟</button><button class="mini-btn" type="default" size="mini" @click="ChangeKLinePeriod(PERIOD_ID.KLINE_15MINUTE_ID)">15分钟</button></view><view class="button-sp-area"><button class="mini-btn" type="default" size="mini" @click="ChangeKLineIndex(0,'BOLL')">BOLL</button><button class="mini-btn" type="default" size="mini" @click="ChangeKLineIndex(1,'RSI')">RSI</button><button class="mini-btn" type="default" size="mini" @click="ChangeKLineIndex(2,'WR')">WR</button><button class="mini-btn" type="default" size="mini" @click="ChangeKLineIndex(0,'MA')">MA</button><button class="mini-btn" type="default" size="mini" @click="ChangeKLineIndex(1,'VOL')">VOL</button><button class="mini-btn" type="default" size="mini" @click="ChangeKLineIndex(1,'MACD')">MACD</button></view><view class="button-sp-area"><button class="mini-btn" type="default" size="mini" @click="ChangeSymbol('000001.sz')">000001.sz</button><button class="mini-btn" type="default" size="mini" @click="ChangeSymbol('600000.sh')">600000.sh</button></view></view></template><script>
import {JSCommon} from '../../umychart.uniapp/umychart.wechat.3.0.js'function DefaultData() { }DefaultData.GetKLineOption = function ()
{let data = {Type: '历史K线图', Windows: //窗口指标[{Index:"MA",Modify: false, Change: false}, {Index:"VOL",Modify: false, Change: false},{Index:"MACD",Modify: false, Change: false},], CorssCursorTouchEnd:true,IsShowRightMenu:false,       //是否显示右键菜单CorssCursorInfo:{ Left:2,Right:2 },Border: //边框{Left:   1,Right:  1, //右边间距Top:    1,Bottom: 25,},KLine:{Right:1,                            //复权 0 不复权 1 前复权 2 后复权Period:0,                           //周期: 0 日线 1 周线 2 月线 3 年线 PageSize:12,IsShowTooltip:false,},Frame:  //子框架设置 (Height 窗口高度比例值)[{   SplitCount:3,//Height:4,IsShowLeftText:true, IsShowRightText:false},{SplitCount:2,//Height:2,IsShowLeftText:true, IsShowRightText:false},{SplitCount:2,//Height:2,IsShowLeftText:true, IsShowRightText:false}],ExtendChart:[{Name:'KLineTooltip' },],};return data;
}//周期枚举
var PERIOD_ID=
{KLINE_DAY_ID:0,KLINE_WEEK_ID:1,KLINE_MONTH_ID:2,KLINE_YEAR_ID:3,KLINE_MINUTE_ID:4,KLINE_5MINUTE_ID:5,KLINE_15MINUTE_ID:6,KLINE_30MINUTE_ID:7,KLINE_60MINUTE_ID:8
}var g_KLine=
{JSChart:null
};export default
{name:'HQChart',data() {let data={Symbol:'600000.sh',KLine:{Option:DefaultData.GetKLineOption(),IsShow:false,Display:'none',Width:400,Height:600,},PERIOD_ID:PERIOD_ID,};return data;},onLoad() {},onReady(){this.ChangeKLinePeriod(PERIOD_ID.KLINE_DAY_ID);},methods: {//CreateKLineChart:function(){if (this.KLine.JSChart) return;let element = new JSCommon.JSCanvasElement();// #ifdef APP-PLUSelement.IsUniApp=true; //canvas需要指定下 是uniapp的app// #endifelement.ID = 'kline';element.Height = this.KLine.Height;  //高度宽度需要手动绑定!!element.Width = this.KLine.Width;g_KLine.JSChart = JSCommon.JSChart.Init(element);this.KLine.Option.NetworkFilter=this.NetworkFilter;this.KLine.Option.Symbol=this.Symbol;this.KLine.Option.IsFullDraw=true;     //每次手势移动全屏重绘g_KLine.JSChart.SetOption(this.KLine.Option);},//K线周期切换ChangeKLinePeriod:function(period){if (!g_KLine.JSChart)    //不存在创建{this.KLine.Option.Period=period;this.CreateKLineChart();}else{g_KLine.JSChart.ChangePeriod(period);}},//切换指标 windowIndex=窗口索引 0开始, name=指标名字/IDChangeKLineIndex:function(windowIndex, name){if (!g_KLine.JSChart) return;g_KLine.JSChart.ChangeIndex(windowIndex,name);},//切换股票ChangeSymbol:function(symbol){if (!g_KLine.JSChart) return;g_KLine.JSChart.ChangeSymbol(symbol);},NetworkFilter:function(data, callback){console.log('[HQChart:NetworkFilter] data', data.Name);},//KLine事件KLineTouchStart: function (event) {if (g_KLine.JSChart) g_KLine.JSChart.OnTouchStart(event);},KLineTouchMove: function (event) {if (g_KLine.JSChart) g_KLine.JSChart.OnTouchMove(event);},KLineTouchEnd: function (event) {if (g_KLine.JSChart) g_KLine.JSChart.OnTouchEnd(event);},}
}
</script><style>.content {display: flex;flex-direction: column;align-items: center;justify-content: center;}.logo {height: 200upx;width: 200upx;margin-top: 200upx;margin-left: auto;margin-right: auto;margin-bottom: 50upx;}.text-area {display: flex;justify-content: center;}.title {font-size: 36upx;color: #8f8f94;}
</style>

注意

 element.IsUniApp=true

如果是uniapp-app平台的需要设置为true,其他平台的不需要设置

3.运行到模拟器

通过uniapp下载hqchart插件

安装

插件地址: https://ext.dcloud.net.cn/plugin?id=4591
直接通过HBuilder X就可以安装,一般安装的目录在uni_modules\jones-hqchart2下面

使用

改下import路径就可以,其他不变

// #ifdef H5
import HQChart from '@/uni_modules/jones-hqchart2/js_sdk/umychart.uniapp.h5.js'
//HQChart.JSChart.SetDomain("xxxxx.com");
//HQChart.JSComplier.SetDomain("xxxx.com");
// #endif// #ifndef H5
import {JSCommon} from '@/uni_modules/jones-hqchart2/js_sdk/umychart.wechat.3.0.js'
import {JSCommonHQStyle} from '@/uni_modules/jones-hqchart2/js_sdk/umychart.style.wechat.js'
import {JSCommonComplier} from "@/uni_modules/jones-hqchart2/js_sdk/umychart.complier.wechat.js"//禁用日志
JSConsole.Complier.Log=()=>{ };
JSConsole.Chart.Log=()=>{ };
// #endif

特别感谢 秋云

帮我解决了在uniapp-app 环境中measureText 无法计算的问题。
官方bugi地址: https://ask.dcloud.net.cn/question/70374

交流QQ群: 950092318

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

HQChart代码地址

地址:github.com/jones2000/HQChart

HQChart使用教程37 - 如何在uni-app创建k线图(app)相关推荐

  1. HQChart使用教程2- 如何把自定义指标显示在K线图页面

    如何把自定义指标显示在K线图页面 自定义一个指标 通过Option设置指标 自定义一个带参数的指标 让我们用上证指数来回测这个奇葩的BS指标吧 HQChart代码地址 效果图 自定义一个指标 假设我们 ...

  2. HQChart使用教程35 - 如何在uni-app创建K线图(h5)

    HQChart使用教程35 - 如何使用uni-app创建K线图 插件目录 创建步骤 1. 创建一个空的uni-app 工程, 把umychart_uniapp_h5 目录拷贝到工程中. 2. 创建一 ...

  3. HQChart小程序教程3-新版2D单画布如何切换K线图和分时图

    HQChart小程序教程3-新版2D单画布如何切换K线图和分时图 K线图和分时图 图形切换流程图 代码讲解 K线周期切换 创建K线图 步骤 配色修改 禁止hqchart缓存绘制 HQChart代码地址 ...

  4. HQChart钉钉小程序教程1-创建K线图

    HQChart钉钉小程序教程1-创建K线图,分时图 钉钉小程序HQChart效果图 步骤 1. 创建画布 2. 添加HQChart插件文件 3. import插件 4. 初始化HQChart插件 5. ...

  5. HQChart使用教程4- 如何自定义K线图颜色风格

    如何自定义K线图颜色风格 切换整体风格函数 uniapp/小程序 修改部分配置颜色 风格配置字段说明 配置项说明 y轴顶部刻度文字向下偏移 X轴底部刻度文字,向下偏移 K线标题字段配色修改 PC端to ...

  6. HQChart使用教程1- 如何快速创建一个K线图页面

    快速创建一个K线图页面 HQChart介绍 demo页面代码 Option的配置项说明 Type Symbol IsAutoUpdate IsShowRightMenu IsShowCorssCurs ...

  7. keyshot聚光灯_【KeyShot教程】如何在KeyShot中创建和使用物理灯光?

    原标题:[KeyShot教程]如何在KeyShot中创建和使用物理灯光? 在KeyShot中,有两种方法可以点亮场景.HDRI是默认方法,但也可以使用物理灯.HDRI和物理照明的组合也很有效.要添加物 ...

  8. HQChart使用教程9- 如何快速创建K线训练页面

    HQChart使用教程9- 如何快速创建K线训练页面 K线训练已重构新版本使用详见 demo页面部分代码 Option的配置项说明 注册K线训练K线移动的监听 K线训练操作接口 HQChart代码地址 ...

  9. AXURE教程:中继器制作K线图

    K线图应用于股票.贵金属.期货等等的金融交易中,所以K线图成了金融交易软件必不可少的一个元件. 目前市面上的k线图原型都是图片,不能让老板或者甲方爸爸更直观的看到交互效果:所以作者出了这期教程,教你们 ...

最新文章

  1. spark编程基础--5.1RDD编程基础
  2. 电机高频注入原理_永磁同步电机新型转子位置估计误差补偿策略
  3. 字符串_月隐学python第7课
  4. live555 接收rtsp视频流流程分析
  5. mac下sublime text的使用
  6. 聊聊为什么 IDL 只能扩展字段而非修改
  7. UI设计师应该知道的,APP设计师的辅助小工具网站集合导航
  8. 【数据结构的魅力】004.堆、前缀树、桶排序、排序算法总结
  9. Java String to InputStream
  10. 机器学习常见算法个人总结
  11. python怎么更新列表_python更新列表的方法
  12. Swift 包管理器教程
  13. Emu8086下载和注册
  14. 腾讯云短信服务详细教程
  15. jmu-python-涨工资
  16. 初中数学定理公式汇编
  17. 企业邮箱怎么开通?手机微信怎么绑定公司邮箱?
  18. 创作者基金 11 月亮点
  19. 损失函数、代价(成本)函数、目标函数
  20. “打工人”都在用的邮件使用规范

热门文章

  1. 【计组复习(二)指令】
  2. HVR数据复制软件部署之(一)--HUB端部署
  3. 中国工业经济论文合集-含全部数据代码(2015-2021年)
  4. 五分钟JAVA代码教会你:FFmpeg实现视频试看(window版本)
  5. 企鹅号回应盗号事件:部分帐号被恶意破解 将重拳打击
  6. 国产独立游戏《地牢笑声》|Cocos 3D版Roguelike
  7. 【音视频处理】MP4、FLV、HLS适用范围,在线视频播放哪个更好
  8. 【PPT模板】团队介绍
  9. Unity中关于 Mipmap
  10. 大一计算机应用基础案例教程视频,2015计算机应用基础案例教程.ppt