hqchart 1.1.14311 → 1.1.14320
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/umychart.vue.js +212 -202
- package/package.json +1 -1
- package/src/jscommon/umychart.complier.js +17 -1
- package/src/jscommon/umychart.js +275 -110
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +293 -112
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.vue.js +293 -112
|
@@ -35898,6 +35898,220 @@ function ChartSimplePie()
|
|
|
35898
35898
|
}
|
|
35899
35899
|
}
|
|
35900
35900
|
|
|
35901
|
+
|
|
35902
|
+
//雷达图
|
|
35903
|
+
function ChartSimpleRadar()
|
|
35904
|
+
{
|
|
35905
|
+
this.newMethod=IChartPainting; //派生
|
|
35906
|
+
this.newMethod();
|
|
35907
|
+
delete this.newMethod;
|
|
35908
|
+
|
|
35909
|
+
this.ClassName='ChartSimpleRadar'; //类名
|
|
35910
|
+
this.BorderPoint=[]; //边框点
|
|
35911
|
+
this.DataPoint=[]; //数据点
|
|
35912
|
+
this.CenterPoint={};
|
|
35913
|
+
this.StartAngle=0;
|
|
35914
|
+
this.Color='rgb(198,198,198)';
|
|
35915
|
+
this.AreaColor='rgba(242,154,118,0.4)'; //面积图颜色
|
|
35916
|
+
this.AreaLineColor='rgb(242,154,118)';
|
|
35917
|
+
this.TitleFont=24*GetDevicePixelRatio()+'px 微软雅黑';
|
|
35918
|
+
this.TitleColor='rgb(102,102,102)';
|
|
35919
|
+
this.BGColor = ['rgb(255,255,255)', 'rgb(224,224,224)']//背景色
|
|
35920
|
+
|
|
35921
|
+
this.DrawBorder=function() //画边框
|
|
35922
|
+
{
|
|
35923
|
+
if (this.BorderPoint.length<=0) return;
|
|
35924
|
+
|
|
35925
|
+
this.Canvas.font=this.TitleFont;
|
|
35926
|
+
this.Canvas.strokeStyle = this.Color;
|
|
35927
|
+
const aryBorder=[1,0.8,0.6,0.4,0.2];
|
|
35928
|
+
for (let j in aryBorder)
|
|
35929
|
+
{
|
|
35930
|
+
var rate = aryBorder[j];
|
|
35931
|
+
var isFirstDraw=true;
|
|
35932
|
+
for(let i in this.BorderPoint)
|
|
35933
|
+
{
|
|
35934
|
+
var item=this.BorderPoint[i];
|
|
35935
|
+
item.X = this.CenterPoint.X + item.Radius * Math.cos(item.Angle * Math.PI / 180) * rate;
|
|
35936
|
+
item.Y = this.CenterPoint.Y + item.Radius * Math.sin(item.Angle * Math.PI / 180) * rate;
|
|
35937
|
+
if (isFirstDraw)
|
|
35938
|
+
{
|
|
35939
|
+
this.Canvas.beginPath();
|
|
35940
|
+
this.Canvas.moveTo(item.X,item.Y);
|
|
35941
|
+
isFirstDraw=false;
|
|
35942
|
+
}
|
|
35943
|
+
else
|
|
35944
|
+
{
|
|
35945
|
+
this.Canvas.lineTo(item.X,item.Y);
|
|
35946
|
+
}
|
|
35947
|
+
}
|
|
35948
|
+
|
|
35949
|
+
this.Canvas.closePath();
|
|
35950
|
+
this.Canvas.stroke();
|
|
35951
|
+
this.Canvas.fillStyle = this.BGColor[j%2==0?0:1];
|
|
35952
|
+
this.Canvas.fill();
|
|
35953
|
+
}
|
|
35954
|
+
|
|
35955
|
+
this.Canvas.beginPath();
|
|
35956
|
+
for(let i in this.BorderPoint)
|
|
35957
|
+
{
|
|
35958
|
+
var item=this.BorderPoint[i];
|
|
35959
|
+
item.X = this.CenterPoint.X + item.Radius * Math.cos(item.Angle * Math.PI / 180);
|
|
35960
|
+
item.Y = this.CenterPoint.Y + item.Radius * Math.sin(item.Angle * Math.PI / 180);
|
|
35961
|
+
this.Canvas.moveTo(this.CenterPoint.X,this.CenterPoint.Y);
|
|
35962
|
+
this.Canvas.lineTo(item.X,item.Y);
|
|
35963
|
+
this.DrawText(item);
|
|
35964
|
+
}
|
|
35965
|
+
this.Canvas.stroke();
|
|
35966
|
+
}
|
|
35967
|
+
|
|
35968
|
+
this.DrawArea=function()
|
|
35969
|
+
{
|
|
35970
|
+
if (!this.DataPoint || this.DataPoint.length<=0) return;
|
|
35971
|
+
|
|
35972
|
+
this.Canvas.fillStyle = this.AreaColor;
|
|
35973
|
+
this.Canvas.strokeStyle = this.AreaLineColor;
|
|
35974
|
+
this.Canvas.beginPath();
|
|
35975
|
+
var isFirstDraw=true;
|
|
35976
|
+
for(let i in this.DataPoint)
|
|
35977
|
+
{
|
|
35978
|
+
var item=this.DataPoint[i];
|
|
35979
|
+
if (isFirstDraw)
|
|
35980
|
+
{
|
|
35981
|
+
this.Canvas.beginPath();
|
|
35982
|
+
this.Canvas.moveTo(item.X,item.Y);
|
|
35983
|
+
isFirstDraw=false;
|
|
35984
|
+
}
|
|
35985
|
+
else
|
|
35986
|
+
{
|
|
35987
|
+
this.Canvas.lineTo(item.X,item.Y);
|
|
35988
|
+
}
|
|
35989
|
+
}
|
|
35990
|
+
|
|
35991
|
+
this.Canvas.closePath();
|
|
35992
|
+
this.Canvas.fill();
|
|
35993
|
+
this.Canvas.stroke();
|
|
35994
|
+
}
|
|
35995
|
+
|
|
35996
|
+
this.DrawText=function(item)
|
|
35997
|
+
{
|
|
35998
|
+
if (!item.Text) return;
|
|
35999
|
+
|
|
36000
|
+
//JSConsole.Chart.Log(item.Text, item.Angle);
|
|
36001
|
+
this.Canvas.fillStyle = this.TitleColor;
|
|
36002
|
+
var xText = item.X, yText = item.Y;
|
|
36003
|
+
|
|
36004
|
+
//显示每个角度的位置
|
|
36005
|
+
if (item.Angle > 0 && item.Angle < 45) {
|
|
36006
|
+
this.Canvas.textAlign = 'left';
|
|
36007
|
+
this.Canvas.textBaseline = 'middle';
|
|
36008
|
+
xText += 2;
|
|
36009
|
+
}
|
|
36010
|
+
else if (item.Angle >= 0 && item.Angle < 90) {
|
|
36011
|
+
this.Canvas.textAlign = 'left';
|
|
36012
|
+
this.Canvas.textBaseline = 'top';
|
|
36013
|
+
xText += 2;
|
|
36014
|
+
}
|
|
36015
|
+
else if (item.Angle >= 90 && item.Angle < 135) {
|
|
36016
|
+
this.Canvas.textAlign = 'right';
|
|
36017
|
+
this.Canvas.textBaseline = 'top';
|
|
36018
|
+
xText -= 2;
|
|
36019
|
+
}
|
|
36020
|
+
else if (item.Angle >= 135 && item.Angle < 180) {
|
|
36021
|
+
this.Canvas.textAlign = 'right';
|
|
36022
|
+
this.Canvas.textBaseline = 'top';
|
|
36023
|
+
xText -= 2;
|
|
36024
|
+
}
|
|
36025
|
+
else if (item.Angle >= 180 && item.Angle < 225) {
|
|
36026
|
+
this.Canvas.textAlign = 'right';
|
|
36027
|
+
this.Canvas.textBaseline = 'middle';
|
|
36028
|
+
xText -= 2;
|
|
36029
|
+
}
|
|
36030
|
+
else if (item.Angle >= 225 && item.Angle <= 270) {
|
|
36031
|
+
this.Canvas.textAlign = 'center';
|
|
36032
|
+
this.Canvas.textBaseline = 'bottom';
|
|
36033
|
+
}
|
|
36034
|
+
else if (item.Angle > 270 && item.Angle < 315) {
|
|
36035
|
+
this.Canvas.textAlign = 'left';
|
|
36036
|
+
this.Canvas.textBaseline = 'bottom';
|
|
36037
|
+
xText += 2;
|
|
36038
|
+
}
|
|
36039
|
+
else {
|
|
36040
|
+
this.Canvas.textAlign = 'left';
|
|
36041
|
+
this.Canvas.textBaseline = 'middle';
|
|
36042
|
+
xText += 2;
|
|
36043
|
+
}
|
|
36044
|
+
|
|
36045
|
+
this.Canvas.fillText(item.Text, xText, yText);
|
|
36046
|
+
}
|
|
36047
|
+
|
|
36048
|
+
this.Draw=function()
|
|
36049
|
+
{
|
|
36050
|
+
this.BorderPoint=[];
|
|
36051
|
+
this.DataPoint=[];
|
|
36052
|
+
this.CenterPoint={};
|
|
36053
|
+
if (!this.Data || !this.Data.Data || !(this.Data.Data.length>0))
|
|
36054
|
+
this.CalculatePoints(null);
|
|
36055
|
+
else
|
|
36056
|
+
this.CalculatePoints(this.Data.Data);
|
|
36057
|
+
|
|
36058
|
+
this.DrawBorder();
|
|
36059
|
+
this.DrawArea();
|
|
36060
|
+
}
|
|
36061
|
+
|
|
36062
|
+
this.CalculatePoints=function(data)
|
|
36063
|
+
{
|
|
36064
|
+
let left=this.ChartBorder.GetLeft();
|
|
36065
|
+
let right=this.ChartBorder.GetRight();
|
|
36066
|
+
let top=this.ChartBorder.GetTop();
|
|
36067
|
+
let bottom=this.ChartBorder.GetBottom();
|
|
36068
|
+
let width=this.ChartBorder.GetWidth();
|
|
36069
|
+
let height=this.ChartBorder.GetHeight();
|
|
36070
|
+
|
|
36071
|
+
let ptCenter={X:left+width/2, Y:top+height/2}; //中心点
|
|
36072
|
+
let radius=Math.min(width/2,height/2)-2 //半径
|
|
36073
|
+
let count=Math.max(5,data?data.length:0);
|
|
36074
|
+
let averageAngle=360/count;
|
|
36075
|
+
for(let i=0;i<count;++i)
|
|
36076
|
+
{
|
|
36077
|
+
let ptBorder = { Index: i, Radius: radius, Angle: i * averageAngle + this.StartAngle };
|
|
36078
|
+
let angle = ptBorder.Angle;
|
|
36079
|
+
|
|
36080
|
+
if (data && i<data.length)
|
|
36081
|
+
{
|
|
36082
|
+
var item=data[i];
|
|
36083
|
+
let ptData={Index:i,Text:item.Text};
|
|
36084
|
+
ptBorder.Text=item.Name;
|
|
36085
|
+
if (!item.Value)
|
|
36086
|
+
{
|
|
36087
|
+
ptData.X=ptCenter.X;
|
|
36088
|
+
ptData.Y=ptCenter.Y;
|
|
36089
|
+
}
|
|
36090
|
+
else
|
|
36091
|
+
{
|
|
36092
|
+
var value=item.Value;
|
|
36093
|
+
if (value>=1) value=1;
|
|
36094
|
+
var dataRadius=radius*value;
|
|
36095
|
+
ptData.X=ptCenter.X+dataRadius*Math.cos(angle*Math.PI/180);
|
|
36096
|
+
ptData.Y=ptCenter.Y+dataRadius*Math.sin(angle*Math.PI/180);
|
|
36097
|
+
}
|
|
36098
|
+
|
|
36099
|
+
this.DataPoint.push(ptData);
|
|
36100
|
+
}
|
|
36101
|
+
|
|
36102
|
+
this.BorderPoint.push(ptBorder);
|
|
36103
|
+
}
|
|
36104
|
+
|
|
36105
|
+
this.CenterPoint=ptCenter;
|
|
36106
|
+
}
|
|
36107
|
+
|
|
36108
|
+
//空数据
|
|
36109
|
+
this.DrawEmptyData=function()
|
|
36110
|
+
{
|
|
36111
|
+
JSConsole.Chart.Log('[ChartPie::DrawEmptyData]')
|
|
36112
|
+
}
|
|
36113
|
+
}
|
|
36114
|
+
|
|
35901
36115
|
//分钟成交量 支持横屏
|
|
35902
36116
|
function ChartMinuteVolumBar()
|
|
35903
36117
|
{
|
|
@@ -45456,6 +45670,7 @@ function ChartDrawSVG()
|
|
|
45456
45670
|
{
|
|
45457
45671
|
var item=this.Texts[i];
|
|
45458
45672
|
var key=this.BuildKey(item);
|
|
45673
|
+
if (!key) continue;
|
|
45459
45674
|
|
|
45460
45675
|
if (mapData.has(key))
|
|
45461
45676
|
{
|
|
@@ -45761,10 +45976,13 @@ function ChartDrawSVG()
|
|
|
45761
45976
|
}
|
|
45762
45977
|
|
|
45763
45978
|
var x,y,price;
|
|
45979
|
+
var setKey=new Set(); //已经画过的Key就不再用了
|
|
45764
45980
|
for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j,xOffset+=(dataWidth+distanceWidth))
|
|
45765
45981
|
{
|
|
45766
45982
|
var kItem=this.Data.Data[i];
|
|
45767
45983
|
var key=this.BuildKey(kItem);
|
|
45984
|
+
if (setKey.has(key)) continue;
|
|
45985
|
+
|
|
45768
45986
|
if (!this.MapCache.has(key)) continue;
|
|
45769
45987
|
var mapItem=this.MapCache.get(key);
|
|
45770
45988
|
|
|
@@ -45922,6 +46140,8 @@ function ChartDrawSVG()
|
|
|
45922
46140
|
this.Canvas.setLineDash([]);
|
|
45923
46141
|
}
|
|
45924
46142
|
}
|
|
46143
|
+
|
|
46144
|
+
setKey.add(key);
|
|
45925
46145
|
}
|
|
45926
46146
|
}
|
|
45927
46147
|
|
|
@@ -56519,6 +56739,7 @@ function ChartCorssCursor()
|
|
|
56519
56739
|
this.TextBGColor=g_JSChartResource.CorssCursorBGColor; //文本背景色
|
|
56520
56740
|
this.BorderColor=g_JSChartResource.CorssCursorBorderColor; //边框颜色
|
|
56521
56741
|
this.XRangeBGColor=g_JSChartResource.CorssCursorXRangeBGColor;
|
|
56742
|
+
this.LineDash=g_JSChartResource.CorssCursorLineDash.slice(); //虚线
|
|
56522
56743
|
this.TextHeight=20; //文本字体高度
|
|
56523
56744
|
this.LastPoint;
|
|
56524
56745
|
this.LastValue; //{ Y:{ Value:, Extend: } }
|
|
@@ -56574,6 +56795,7 @@ function ChartCorssCursor()
|
|
|
56574
56795
|
this.TextBGColor=g_JSChartResource.CorssCursorBGColor; //文本背景色
|
|
56575
56796
|
this.BorderColor=g_JSChartResource.CorssCursorBorderColor; //边框颜色
|
|
56576
56797
|
this.XRangeBGColor=g_JSChartResource.CorssCursorXRangeBGColor;
|
|
56798
|
+
this.LineDash=g_JSChartResource.CorssCursorLineDash.slice(); //虚线
|
|
56577
56799
|
}
|
|
56578
56800
|
|
|
56579
56801
|
this.GetCloseYPoint=function(index)
|
|
@@ -56832,10 +57054,10 @@ function ChartCorssCursor()
|
|
|
56832
57054
|
}
|
|
56833
57055
|
|
|
56834
57056
|
var pixel=GetDevicePixelRatio();
|
|
56835
|
-
if (this.HPenType==1 || this.HPenType==0) //0
|
|
57057
|
+
if (this.HPenType==1 || this.HPenType==0) //0=虚线 1=实线
|
|
56836
57058
|
{
|
|
56837
57059
|
this.Canvas.strokeStyle=this.HPenColor;
|
|
56838
|
-
if (this.HPenType==0) this.Canvas.setLineDash(
|
|
57060
|
+
if (this.HPenType==0) this.Canvas.setLineDash(this.LineDash); //虚线
|
|
56839
57061
|
//this.Canvas.lineWidth=0.5
|
|
56840
57062
|
this.Canvas.beginPath();
|
|
56841
57063
|
this.Canvas.moveTo(left,ToFixedPoint(y));
|
|
@@ -56848,7 +57070,7 @@ function ChartCorssCursor()
|
|
|
56848
57070
|
this.Canvas.strokeStyle=this.VPenColor;
|
|
56849
57071
|
if (this.VPenType==0)
|
|
56850
57072
|
{
|
|
56851
|
-
this.Canvas.setLineDash(
|
|
57073
|
+
this.Canvas.setLineDash(this.LineDash); //虚线
|
|
56852
57074
|
}
|
|
56853
57075
|
else if (this.VPenType==2)
|
|
56854
57076
|
{
|
|
@@ -57443,7 +57665,7 @@ function ChartCorssCursor()
|
|
|
57443
57665
|
var pixel=GetDevicePixelRatio();
|
|
57444
57666
|
this.Canvas.save();
|
|
57445
57667
|
this.Canvas.strokeStyle=this.HPenColor;
|
|
57446
|
-
if (this.HPenType==0) this.Canvas.setLineDash(
|
|
57668
|
+
if (this.HPenType==0) this.Canvas.setLineDash(this.LineDash); //虚线
|
|
57447
57669
|
|
|
57448
57670
|
//画竖线
|
|
57449
57671
|
this.Canvas.beginPath();
|
|
@@ -57457,7 +57679,7 @@ function ChartCorssCursor()
|
|
|
57457
57679
|
this.Canvas.strokeStyle=this.VPenColor;
|
|
57458
57680
|
if (this.VPenType==0)
|
|
57459
57681
|
{
|
|
57460
|
-
this.Canvas.setLineDash(
|
|
57682
|
+
this.Canvas.setLineDash(this.LineDash); //虚线
|
|
57461
57683
|
}
|
|
57462
57684
|
else if (this.VPenType==2)
|
|
57463
57685
|
{
|
|
@@ -60733,7 +60955,12 @@ function DynamicChartTitlePainting()
|
|
|
60733
60955
|
{
|
|
60734
60956
|
this.Font=g_JSChartResource.TitleFont;
|
|
60735
60957
|
this.TitleColor=g_JSChartResource.DefaultTextColor;
|
|
60958
|
+
this.SelectedColor=g_JSChartResource.IndexTitleSelectedColor;
|
|
60736
60959
|
this.OverlayIndexType.BGColor=g_JSChartResource.OverlayIndexTitleBGColor;
|
|
60960
|
+
|
|
60961
|
+
this.BGColor=g_JSChartResource.IndexTitleBGColor;
|
|
60962
|
+
this.BGBorderColor=g_JSChartResource.IndexTitleBorderColor;
|
|
60963
|
+
this.BGBorderMoveOnColor=g_JSChartResource.IndexTitleBorderMoveOnColor;
|
|
60737
60964
|
}
|
|
60738
60965
|
|
|
60739
60966
|
this.SetDynamicTitleData=function(outName, args, data)
|
|
@@ -74407,6 +74634,7 @@ function JSChartResource()
|
|
|
74407
74634
|
this.CorssCursorHPenColor="rgb(130,130,130)"; //十字光标线段颜色(水平)
|
|
74408
74635
|
this.CorssCursorVPenColor="rgb(130,130,130)"; //十字光标线段颜色(垂直)
|
|
74409
74636
|
this.CorssCursorXRangeBGColor="rgba(100,149,237,0.3)"; //十字光标X轴访问背景色
|
|
74637
|
+
this.CorssCursorLineDash=[3*GetDevicePixelRatio(),2*GetDevicePixelRatio()]; //十字光标虚线
|
|
74410
74638
|
|
|
74411
74639
|
this.CorssCursor=
|
|
74412
74640
|
{
|
|
@@ -75827,6 +76055,7 @@ function JSChartResource()
|
|
|
75827
76055
|
if (style.CorssCursorHPenColor) this.CorssCursorHPenColor = style.CorssCursorHPenColor;
|
|
75828
76056
|
if (style.CorssCursorBorderColor) this.CorssCursorBorderColor=style.CorssCursorBorderColor;
|
|
75829
76057
|
if (style.CorssCursorXRangeBGColor) this.CorssCursorXRangeBGColor=style.CorssCursorXRangeBGColor;
|
|
76058
|
+
if (style.CorssCursorLineDash) this.CorssCursorLineDash=style.CorssCursorLineDash.slice();
|
|
75830
76059
|
if (style.CorssCursor && style.CorssCursor.RightButton)
|
|
75831
76060
|
{
|
|
75832
76061
|
var item=style.CorssCursor.RightButton;
|
|
@@ -89866,12 +90095,12 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
89866
90095
|
this.CaclutateCallCationYRange();
|
|
89867
90096
|
}
|
|
89868
90097
|
|
|
90098
|
+
//增量更新
|
|
89869
90099
|
this.RecvUpdateMinuteData=function(data)
|
|
89870
90100
|
{
|
|
89871
90101
|
var minuteData=MinuteChartContainer.JsonDataToUpdateMinuteData(data);
|
|
89872
90102
|
var aryColorData=MinuteChartContainer.JsonDataToMinuteLineColorData(data);
|
|
89873
|
-
|
|
89874
|
-
this.AfterCloseData=null;
|
|
90103
|
+
|
|
89875
90104
|
var beforeOpenData=MinuteChartContainer.JsonDataToBeforeOpenData(data);
|
|
89876
90105
|
var afterCloseData=MinuteChartContainer.JsonDataToAfterCloseData(data);
|
|
89877
90106
|
var updateTime=MinuteChartContainer.JsonDataToMinuteLastUpdateTime(data); //数据最后的更新时间
|
|
@@ -89890,92 +90119,22 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
89890
90119
|
return;
|
|
89891
90120
|
}
|
|
89892
90121
|
|
|
89893
|
-
|
|
90122
|
+
if (this.IsBeforeData && beforeOpenData) this.BeforeOpenData=beforeOpenData;
|
|
90123
|
+
if (this.IsAfterData && afterCloseData) this.AfterCloseData=afterCloseData;
|
|
89894
90124
|
|
|
90125
|
+
//原始数据
|
|
89895
90126
|
this.UpdateLatestMinuteDataV2(minuteData);
|
|
89896
|
-
|
|
89897
|
-
var aryMinuteData=this.SourceData.Data;
|
|
89898
|
-
this.ColorLineData=aryColorData;
|
|
89899
|
-
this.TradeDate=data.stock[0].date;
|
|
89900
|
-
this.Frame.SetDayCount(1); //单日数据
|
|
89901
|
-
this.SourceData.UpdateTime=updateTime;
|
|
89902
|
-
this.Symbol=minuteData.Symbol;
|
|
89903
|
-
this.Name=minuteData.Name;
|
|
90127
|
+
this.UpdateMinuteUI(data.stock[0], {FunctionName:"RecvUpdateMinuteData"});
|
|
89904
90128
|
|
|
89905
|
-
|
|
89906
|
-
|
|
89907
|
-
if (this.ShareAfterVol==2) //盘前, 盘后成交量公用坐标
|
|
89908
|
-
{
|
|
89909
|
-
if (this.BeforeOpenData && this.AfterCloseData)
|
|
89910
|
-
{
|
|
89911
|
-
var max=Math.max(this.BeforeOpenData.VolMax, this.AfterCloseData.VolMax);
|
|
89912
|
-
var min=Math.min(this.BeforeOpenData.VolMin, this.AfterCloseData.VolMin);
|
|
89913
|
-
this.BeforeOpenData.VolMax=this.AfterCloseData.VolMax=max;
|
|
89914
|
-
this.BeforeOpenData.VolMin=this.AfterCloseData.VolMin=min;
|
|
89915
|
-
}
|
|
89916
|
-
}
|
|
89917
|
-
|
|
89918
|
-
var yClose=minuteData.YClose;
|
|
89919
|
-
var upperSymbol=this.Symbol.toUpperCase();
|
|
89920
|
-
var isFutures=MARKET_SUFFIX_NAME.IsFutures(upperSymbol);
|
|
89921
|
-
if (minuteData.YClearing>0 && isFutures) yClose=minuteData.YClearing; //期货使用前结算价
|
|
89922
|
-
this.CaclutateLimitPrice(yClose, minuteData.LimitPrice); //计算涨停价格
|
|
89923
|
-
var extendData=null;
|
|
89924
|
-
if (minuteData.High>0 && minuteData.Low>0) extendData={ High:minuteData.High, Low:minuteData.Low };
|
|
89925
|
-
this.BindMainData(sourceData,yClose, extendData);
|
|
89926
|
-
|
|
89927
|
-
if (this.Frame.SubFrame.length>2)
|
|
90129
|
+
if (data.AutoUpdate===false) //不执行自动更新
|
|
89928
90130
|
{
|
|
89929
|
-
var bindData=new ChartData();
|
|
89930
|
-
bindData.Data=aryMinuteData;
|
|
89931
|
-
for(var i=2; i<this.Frame.SubFrame.length; ++i)
|
|
89932
|
-
{
|
|
89933
|
-
this.BindIndexData(i,bindData);
|
|
89934
|
-
}
|
|
89935
|
-
}
|
|
89936
90131
|
|
|
89937
|
-
|
|
90132
|
+
}
|
|
90133
|
+
else
|
|
89938
90134
|
{
|
|
89939
|
-
|
|
89940
|
-
|
|
89941
|
-
item.Frame.XSplitOperator.DayCount=1;
|
|
89942
|
-
item.Frame.XSplitOperator.Operator(); //调整X轴个数
|
|
89943
|
-
item.Frame.YSplitOperator.Symbol=this.Symbol;
|
|
89944
|
-
|
|
89945
|
-
if (IFrameSplitOperator.IsNonEmptyArray(item.OverlayIndex))
|
|
89946
|
-
{
|
|
89947
|
-
for(var j=0;j<item.OverlayIndex.length; ++j) //子坐标X轴个数同步
|
|
89948
|
-
{
|
|
89949
|
-
var overlayItem=item.OverlayIndex[j];
|
|
89950
|
-
overlayItem.Frame.XPointCount=item.Frame.XPointCount;
|
|
89951
|
-
overlayItem.Frame.MinuteCount=item.Frame.MinuteCount;
|
|
89952
|
-
}
|
|
89953
|
-
}
|
|
90135
|
+
this.AutoUpdateEvent(true, "MinuteChartContainer::RecvUpdateMinuteData");
|
|
90136
|
+
this.AutoUpdate();
|
|
89954
90137
|
}
|
|
89955
|
-
|
|
89956
|
-
this.ChartCorssCursor.StringFormatY.Symbol=this.Symbol;
|
|
89957
|
-
this.ChartCorssCursor.StringFormatX.Symbol=this.Symbol;
|
|
89958
|
-
|
|
89959
|
-
if (MARKET_SUFFIX_NAME.IsSHSZ(upperSymbol)) this.TitlePaint[0].IsShowDate=false;
|
|
89960
|
-
|
|
89961
|
-
if (data.stock[0].IsHistoryMinute==true) this.TitlePaint[0].IsShowDate=true;
|
|
89962
|
-
|
|
89963
|
-
var chartInfo=this.GetChartMinuteInfo();
|
|
89964
|
-
if (chartInfo) chartInfo.SourceData=this.SourceData; //数据绑定到信息地雷上
|
|
89965
|
-
|
|
89966
|
-
this.RecvMinuteDataEvent( {FunctionName:"RecvUpdateMinuteData"} );
|
|
89967
|
-
this.RequestMinuteInfoData();
|
|
89968
|
-
this.RequestOverlayMinuteData();//请求叠加数据 (主数据下载完再下载)
|
|
89969
|
-
this.CreateChartDrawPictureByStorage(); //创建画图工具
|
|
89970
|
-
|
|
89971
|
-
this.UpdateFrameMaxMin(); //调整坐标最大 最小值
|
|
89972
|
-
this.Frame.SetSizeChage(true);
|
|
89973
|
-
this.Draw();
|
|
89974
|
-
|
|
89975
|
-
this.BindAllOverlayIndexData(this.SourceData);
|
|
89976
|
-
|
|
89977
|
-
this.AutoUpdateEvent(true, "MinuteChartContainer::RecvUpdateMinuteData");
|
|
89978
|
-
this.AutoUpdate();
|
|
89979
90138
|
}
|
|
89980
90139
|
|
|
89981
90140
|
this.RecvMinuteData=function(data)
|
|
@@ -90042,15 +90201,31 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
90042
90201
|
var sourceData=new ChartData();
|
|
90043
90202
|
sourceData.Data=aryMinuteData;
|
|
90044
90203
|
sourceData.UpdateTime=updateTime;
|
|
90204
|
+
this.SourceData=sourceData;
|
|
90045
90205
|
|
|
90046
90206
|
this.ColorLineData=aryColorData;
|
|
90047
90207
|
|
|
90048
|
-
this.
|
|
90208
|
+
this.UpdateMinuteUI(data.stock[0], {FunctionName:"RecvMinuteData", Day:{ IsFirstData:bFirstData} });
|
|
90209
|
+
|
|
90210
|
+
if (data.AutoUpdate===false) //不执行自动更新
|
|
90211
|
+
{
|
|
90212
|
+
|
|
90213
|
+
}
|
|
90214
|
+
else
|
|
90215
|
+
{
|
|
90216
|
+
this.AutoUpdateEvent(true, "MinuteChartContainer::RecvMinuteData");
|
|
90217
|
+
this.AutoUpdate();
|
|
90218
|
+
}
|
|
90219
|
+
}
|
|
90220
|
+
|
|
90221
|
+
//更新单日分时图
|
|
90222
|
+
this.UpdateMinuteUI=function(stockData, eventData)
|
|
90223
|
+
{
|
|
90224
|
+
this.TradeDate=stockData.date;
|
|
90049
90225
|
this.Frame.SetDayCount(1); //单日数据
|
|
90050
90226
|
|
|
90051
|
-
this.
|
|
90052
|
-
this.
|
|
90053
|
-
this.Name=data.stock[0].name;
|
|
90227
|
+
this.Symbol=stockData.symbol;
|
|
90228
|
+
this.Name=stockData.name;
|
|
90054
90229
|
|
|
90055
90230
|
this.SetCallCationDataBorder( { Left:this.IsBeforeData, Right:this.IsAfterData , MultiDay:{ Left:false, Right:false }} );
|
|
90056
90231
|
|
|
@@ -90065,26 +90240,26 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
90065
90240
|
}
|
|
90066
90241
|
}
|
|
90067
90242
|
|
|
90068
|
-
var yClose=
|
|
90243
|
+
var yClose=stockData.yclose;
|
|
90069
90244
|
var upperSymbol=this.Symbol.toUpperCase();
|
|
90070
90245
|
var isFutures=MARKET_SUFFIX_NAME.IsFutures(upperSymbol);
|
|
90071
|
-
if (
|
|
90072
|
-
this.CaclutateLimitPrice(yClose,
|
|
90246
|
+
if (stockData.yclearing>0 && isFutures) yClose=stockData.yclearing; //期货使用前结算价
|
|
90247
|
+
this.CaclutateLimitPrice(yClose, stockData.limitprice); //计算涨停价格
|
|
90073
90248
|
var extendData=null;
|
|
90074
|
-
if (
|
|
90075
|
-
this.BindMainData(
|
|
90249
|
+
if (stockData.high>0 && stockData.low>0) extendData={ High:stockData.high, Low:stockData.low };
|
|
90250
|
+
this.BindMainData(this.SourceData,yClose, extendData);
|
|
90076
90251
|
|
|
90077
90252
|
if (this.Frame.SubFrame.length>2)
|
|
90078
90253
|
{
|
|
90079
90254
|
var bindData=new ChartData();
|
|
90080
|
-
bindData.Data=
|
|
90255
|
+
bindData.Data=this.SourceData.Data;
|
|
90081
90256
|
for(var i=2; i<this.Frame.SubFrame.length; ++i)
|
|
90082
90257
|
{
|
|
90083
90258
|
this.BindIndexData(i,bindData);
|
|
90084
90259
|
}
|
|
90085
90260
|
}
|
|
90086
90261
|
|
|
90087
|
-
for(
|
|
90262
|
+
for(var i=0, j=0; i<this.Frame.SubFrame.length; ++i)
|
|
90088
90263
|
{
|
|
90089
90264
|
var item=this.Frame.SubFrame[i];
|
|
90090
90265
|
item.Frame.XSplitOperator.Symbol=this.Symbol;
|
|
@@ -90092,7 +90267,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
90092
90267
|
item.Frame.XSplitOperator.Operator(); //调整X轴个数
|
|
90093
90268
|
item.Frame.YSplitOperator.Symbol=this.Symbol;
|
|
90094
90269
|
|
|
90095
|
-
for(
|
|
90270
|
+
for(j=0;j<item.OverlayIndex.length;++j) //子坐标X轴个数同步
|
|
90096
90271
|
{
|
|
90097
90272
|
var overlayItem=item.OverlayIndex[j];
|
|
90098
90273
|
overlayItem.Frame.XPointCount=item.Frame.XPointCount;
|
|
@@ -90105,12 +90280,12 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
90105
90280
|
|
|
90106
90281
|
if (MARKET_SUFFIX_NAME.IsSHSZ(upperSymbol)) this.TitlePaint[0].IsShowDate=false;
|
|
90107
90282
|
|
|
90108
|
-
if (
|
|
90283
|
+
if (stockData.IsHistoryMinute==true) this.TitlePaint[0].IsShowDate=true;
|
|
90109
90284
|
|
|
90110
90285
|
var chartInfo=this.GetChartMinuteInfo();
|
|
90111
90286
|
if (chartInfo) chartInfo.SourceData=this.SourceData; //数据绑定到信息地雷上
|
|
90112
90287
|
|
|
90113
|
-
this.RecvMinuteDataEvent(
|
|
90288
|
+
if (eventData) this.RecvMinuteDataEvent( eventData );
|
|
90114
90289
|
this.RequestMinuteInfoData();
|
|
90115
90290
|
this.RequestOverlayMinuteData();//请求叠加数据 (主数据下载完再下载)
|
|
90116
90291
|
this.CreateChartDrawPictureByStorage(); //创建画图工具
|
|
@@ -90120,16 +90295,6 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
90120
90295
|
this.Draw();
|
|
90121
90296
|
|
|
90122
90297
|
this.BindAllOverlayIndexData(this.SourceData);
|
|
90123
|
-
|
|
90124
|
-
if (data.AutoUpdate===false) //不执行自动更新
|
|
90125
|
-
{
|
|
90126
|
-
|
|
90127
|
-
}
|
|
90128
|
-
else
|
|
90129
|
-
{
|
|
90130
|
-
this.AutoUpdateEvent(true, "MinuteChartContainer::RecvMinuteData");
|
|
90131
|
-
this.AutoUpdate();
|
|
90132
|
-
}
|
|
90133
90298
|
}
|
|
90134
90299
|
|
|
90135
90300
|
this.CaclutateLimitPrice=function(yClose, limitData)
|
|
@@ -112332,8 +112497,24 @@ function JSDraw(errorHandler,symbolData)
|
|
|
112332
112497
|
}
|
|
112333
112498
|
|
|
112334
112499
|
//饼图
|
|
112335
|
-
this.PIE_CELL=function(
|
|
112500
|
+
this.PIE_CELL=function(data, color, text, textColor, lineColor)
|
|
112336
112501
|
{
|
|
112502
|
+
var value=null;
|
|
112503
|
+
if (IFrameSplitOperator.IsNumber(data))
|
|
112504
|
+
{
|
|
112505
|
+
value=data;
|
|
112506
|
+
}
|
|
112507
|
+
else if (IFrameSplitOperator.IsString(data))
|
|
112508
|
+
{
|
|
112509
|
+
value=parseFloat(data);
|
|
112510
|
+
}
|
|
112511
|
+
else if (IFrameSplitOperator.IsNonEmptyArray(data))
|
|
112512
|
+
{
|
|
112513
|
+
var lastValue=data[data.length-1];
|
|
112514
|
+
if (IFrameSplitOperator.IsNumber(lastValue)) value=lastValue;
|
|
112515
|
+
else if (IFrameSplitOperator.IsString(lastValue)) value=parseFloat(lastValue);
|
|
112516
|
+
}
|
|
112517
|
+
|
|
112337
112518
|
var cellItem={ Value:value, Color:color };
|
|
112338
112519
|
if (text) cellItem.Text=text;
|
|
112339
112520
|
if (textColor) cellItem.TextColor=textColor;
|
|
@@ -151576,7 +151757,7 @@ function HQChartScriptWorker()
|
|
|
151576
151757
|
|
|
151577
151758
|
|
|
151578
151759
|
|
|
151579
|
-
var HQCHART_VERSION="1.1.
|
|
151760
|
+
var HQCHART_VERSION="1.1.14319";
|
|
151580
151761
|
|
|
151581
151762
|
function PrintHQChartVersion()
|
|
151582
151763
|
{
|