HQChart实战教程66-动态调整HQChart布局大小

HQChart实战教程66-动态调整HQChart布局大小

需求

在不销毁hqchart实例的情况下,动态调整K线图或分时图的大小, 如下图,把图1的K线图大小调整为图2的大小

图1 在这里插入图片描述
图2在这里插入图片描述

小程序

调整画布大小,并把当前的画布大小设置到hqchart里面,然后调用hqchart实例的OnSize()函数就可以。

   <canvas class="historychart"  id='historychart' type="2d"  
    style="height:{{Height}}px; width:{{Width}}px;" 
    bindtouchstart='historytouchstart' bindtouchmove='historytouchmove' bindtouchend='historytouchend'>
  </canvas>
  ..........
  
    OnChangeSize(event)
    {
        var width=300;
        var height=600;
        this.setData({ Width: width, Height: height}, () => {});

        this.HistoryChart.CanvasElement.Width=width;
        this.HistoryChart.CanvasElement.Height=height;

        var node =  this.HistoryChart.CanvasElement.CanvasNode.node;
        node._width=width;
        node._height=height;
        //const dpr = wx.getSystemInfoSync().pixelRatio;
        node.width = width;
        node.height = height;

        this.HistoryChart.OnSize();
    },

h5

调整绑定的div的大小 然后调用hqchart实例的OnSize()函数就可以

 <div id="kline" >

..........
this.DivKLine=document.getElementById('kline');
.....
 
this.OnSize=function()  //自适应大小调整
{
     var height= $(window).height()-50;
     var width = $(window).width();
     //width=50000;
     this.DivKLine.style.top='0px';
     this.DivKLine.style.left='0px';
     this.DivKLine.style.width=width+'px';
     this.DivKLine.style.height=height+'px';
     this.Chart.OnSize();
 }

App

调整画布大小,并把当前的画布大小设置到hqchart里面,然后调用hqchart实例的OnSize()函数就可以。


<view>
	<canvas id="kline2" canvas-id='kline2' class='kline2' v-bind:style="{width: ChartWidth+'px', height: ChartHeight+'px'}" 
			  @touchstart="KLineTouchStart" @touchmove='KLineTouchMove' @touchend='KLineTouchEnd' ></canvas>  
</view>

OnTestChangeSize()
{
	this.ChartHeight=500;  
	this.ChartWidth=300;
	
	g_JSChart.CanvasElement.Width=this.ChartWidth;
	g_JSChart.CanvasElement.Height=this.ChartHeight;
	g_JSChart.OnSize();
},

OnSize函数说明

OnSize(option)
option可以额外设置K线显示方式
如果不填option, K线会根据窗口大小调整宽度

option=
{
 Type: 0=K线会根据窗口大小调整宽度 1=K线柱子宽度不变 2=K线全部显示(H5支持)
 Redraw:是否重绘图形, 默认(true)
}

HQChart插件源码地址

https://github.com/jones2000/HQChart

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HQChart

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值