hqchart 1.1.14903 → 1.1.14910

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.
@@ -41728,6 +41728,7 @@ function ChartBaseLineBar()
41728
41728
  this.UpColor=g_JSChartResource.ChartBaseLineBar.UpColor;
41729
41729
  this.DownColor=g_JSChartResource.ChartBaseLineBar.DownColor;
41730
41730
  this.LineWidth=1;
41731
+ this.Style=0; //0=坐标使用主图坐标 1=独立坐标
41731
41732
  this.IsDrawFirst=true;
41732
41733
  this.AryData=[]; //{ Date, Time, Up, Down }
41733
41734
  this.DefaultMax; //默认最大值
@@ -41736,6 +41737,74 @@ function ChartBaseLineBar()
41736
41737
  this.YBaseLine;
41737
41738
  this.BarMaxHeight; //{ Up:, Down: }
41738
41739
 
41740
+ this.DrawStyle2=function()
41741
+ {
41742
+ var bHScreen=(this.ChartFrame.IsHScreen===true);
41743
+ var bMinute=this.IsMinuteFrame();
41744
+ var dataWidth=this.ChartFrame.DataWidth;
41745
+ var distanceWidth=this.ChartFrame.DistanceWidth;
41746
+ var xPointCount=this.ChartFrame.XPointCount;
41747
+ var border=this.ChartFrame.GetBorder();
41748
+
41749
+ if (bHScreen)
41750
+ {
41751
+ var chartright=border.BottomEx;
41752
+ var xOffset=border.TopEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
41753
+ }
41754
+ else
41755
+ {
41756
+ var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
41757
+ var chartright=border.RightEx;
41758
+ }
41759
+
41760
+ this.Canvas.save();
41761
+ this.ClipClient(bHScreen);
41762
+
41763
+ this.YBaseLine=this.ChartFrame.GetYFromData(0, false);
41764
+ var aryUpBar=[], aryDownBar=[];
41765
+ for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j,xOffset+=(dataWidth+distanceWidth))
41766
+ {
41767
+ var kItem=this.Data.Data[i];
41768
+ if (!kItem) continue;
41769
+ var key=this.BuildKey(kItem);
41770
+ if (!this.MapCache.has(key)) continue;
41771
+
41772
+ var item=this.MapCache.get(key);
41773
+
41774
+ if (bMinute)
41775
+ {
41776
+ var x=this.ChartFrame.GetXFromIndex(j);
41777
+ }
41778
+ else
41779
+ {
41780
+ var left=xOffset;
41781
+ var right=xOffset+dataWidth;
41782
+ if (right>chartright) break;
41783
+ var x=left+(right-left)/2;
41784
+ }
41785
+
41786
+ if (IFrameSplitOperator.IsNumber(item.Up))
41787
+ {
41788
+ var value=Math.abs(item.Up);
41789
+ var y=this.ChartFrame.GetYFromData(value, false);
41790
+
41791
+ aryUpBar.push({ X:x, Y:y});
41792
+ }
41793
+
41794
+ if (IFrameSplitOperator.IsNumber(item.Down))
41795
+ {
41796
+ var value=Math.abs(item.Down)*-1;
41797
+ var y=this.ChartFrame.GetYFromData(value, false);
41798
+ aryDownBar.push({X:x, Y:y});
41799
+ }
41800
+ }
41801
+
41802
+ this.DrawBars(aryUpBar, this.UpColor);
41803
+ this.DrawBars(aryDownBar,this.DownColor);
41804
+
41805
+ this.Canvas.restore();
41806
+ }
41807
+
41739
41808
  this.Draw=function()
41740
41809
  {
41741
41810
  this.YBaseLine=null;
@@ -41746,6 +41815,14 @@ function ChartBaseLineBar()
41746
41815
  if (!this.HQChart) return;
41747
41816
  if(!this.Data || !IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) return;
41748
41817
  if (!IFrameSplitOperator.IsNumber(this.MaxValue)) return;
41818
+
41819
+ if (this.Style==1)
41820
+ {
41821
+ this.DrawStyle2();
41822
+ return;
41823
+ }
41824
+
41825
+
41749
41826
  this.CalculateBaseLine();
41750
41827
 
41751
41828
  if (!IFrameSplitOperator.IsNumber(this.YBaseLine)) return;
@@ -41913,7 +41990,30 @@ function ChartBaseLineBar()
41913
41990
 
41914
41991
  this.GetMaxMin=function()
41915
41992
  {
41916
- return {Min:null, Max:null};
41993
+ var range={Min:null, Max:null};
41994
+
41995
+ if (this.Style==1) //独立坐标
41996
+ {
41997
+ if (IFrameSplitOperator.IsNumber(this.DefaultMax)) range.Max=this.DefaultMax;
41998
+ range.Min=0;
41999
+
42000
+ var xPointCount=this.ChartFrame.XPointCount;
42001
+ for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j)
42002
+ {
42003
+ var kItem=this.Data.Data[i];
42004
+ if (!kItem) continue;
42005
+ var key=this.BuildKey(kItem);
42006
+ if (!this.MapCache.has(key)) continue;
42007
+
42008
+ var item=this.MapCache.get(key);
42009
+ var value=Math.abs(item.Up);
42010
+ if (range.Max==null || range.Max<value) range.Max=value;
42011
+ var value=Math.abs(item.Down)*-1;
42012
+ if (range.Min>value) range.Min=value;
42013
+ }
42014
+ }
42015
+
42016
+ return range;
41917
42017
  }
41918
42018
  }
41919
42019
 
@@ -1515,7 +1515,7 @@ function JSReportChartContainer(uielement)
1515
1515
  return;
1516
1516
  }
1517
1517
 
1518
- if (!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) return;
1518
+ //if (!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) return;
1519
1519
  if (this.SortInfo && this.SortInfo.Field>=0 && this.SortInfo.Sort>0)
1520
1520
  {
1521
1521
  var column=chart.Column[this.SortInfo.Field];
@@ -1527,7 +1527,7 @@ function JSReportChartContainer(uielement)
1527
1527
  }
1528
1528
 
1529
1529
  var arySymbol=chart.ShowSymbol;
1530
- if (!IFrameSplitOperator.IsNonEmptyArray(arySymbol)) return;
1530
+ //if (!IFrameSplitOperator.IsNonEmptyArray(arySymbol)) return;
1531
1531
  this.RequestStockData(arySymbol);
1532
1532
  }
1533
1533
 
@@ -4382,10 +4382,15 @@ function JSReportChartContainer(uielement)
4382
4382
  if (!chart) return;
4383
4383
 
4384
4384
  var self=this;
4385
- var startIndex=this.Data.YOffset;
4386
4385
  var pageSize=chart.GetPageSize();
4387
- var endIndex=startIndex+pageSize;
4388
- if (endIndex>=this.Data.Data.length) endIndex=this.Data.Data.length-1;
4386
+ var endIndex=0;
4387
+ var startIndex=0;
4388
+ if (IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))
4389
+ {
4390
+ startIndex=this.Data.YOffset;
4391
+ endIndex=startIndex+pageSize;
4392
+ if (endIndex>=this.Data.Data.length) endIndex=this.Data.Data.length-1;
4393
+ }
4389
4394
 
4390
4395
  if (this.NetworkFilter)
4391
4396
  {
@@ -5090,7 +5095,7 @@ function ChartReport()
5090
5095
  this.RectClient={};
5091
5096
 
5092
5097
  //{ Rect:rtItem, Stock:stock, Index:index, Column:column, RowType:rowType, Type:drawInfo.Tooltip.Type, Data:{ AryText:[ {Text:xx} ]} };
5093
- //Type:1=数据截断 2=表头提示信息 20=分时图
5098
+ //Type:1=数据截断 2=表头提示信息 4=提示信息 20=分时图 21=K线
5094
5099
  // { Text, Color, Title:, TitleColor, Space, Margin:{ Left, Top, Right, Bottom }}
5095
5100
  this.TooltipRect=[];
5096
5101
 
@@ -6974,7 +6979,7 @@ function ChartReport()
6974
6979
  //tooltip提示
6975
6980
  if (drawInfo.Tooltip)
6976
6981
  {
6977
- //Type:1=数据截断
6982
+ //Type:1=数据截断 4=提示信息
6978
6983
  var tooltipData={ Rect:rtItem, Stock:stock, Index:index, Column:column, RowType:rowType, Type:drawInfo.Tooltip.Type, Data:drawInfo.Tooltip.Data };
6979
6984
  this.TooltipRect.push(tooltipData);
6980
6985
  }
@@ -7117,10 +7122,13 @@ function ChartReport()
7117
7122
  this.Canvas.clip();
7118
7123
 
7119
7124
  //数据截断提示信息
7120
- drawInfo.Tooltip=
7121
- {
7122
- Type:1,
7123
- Data:{ AryText:[ {Text:drawInfo.Text} ] }
7125
+ if (!drawInfo.Tooltip)
7126
+ {
7127
+ drawInfo.Tooltip=
7128
+ {
7129
+ Type:1,
7130
+ Data:{ AryText:[ {Text:drawInfo.Text} ] }
7131
+ }
7124
7132
  }
7125
7133
  }
7126
7134
 
@@ -7492,6 +7500,15 @@ function ChartReport()
7492
7500
  if (item.Text) drawInfo.Text=item.Text;
7493
7501
  if (item.TextColor) drawInfo.TextColor=item.TextColor;
7494
7502
  if (item.BGColor) drawInfo.BGColor=item.BGColor;
7503
+
7504
+ if (item.Tooltip && IFrameSplitOperator.IsNonEmptyArray(item.Tooltip.AryText))
7505
+ {
7506
+ drawInfo.Tooltip=
7507
+ {
7508
+ Type:4,
7509
+ Data:{ AryText:item.Tooltip.AryText }
7510
+ }
7511
+ }
7495
7512
  }
7496
7513
  else if (IFrameSplitOperator.IsString(item))
7497
7514
  {
@@ -45824,6 +45824,7 @@ function ChartBaseLineBar()
45824
45824
  this.UpColor=g_JSChartResource.ChartBaseLineBar.UpColor;
45825
45825
  this.DownColor=g_JSChartResource.ChartBaseLineBar.DownColor;
45826
45826
  this.LineWidth=1;
45827
+ this.Style=0; //0=坐标使用主图坐标 1=独立坐标
45827
45828
  this.IsDrawFirst=true;
45828
45829
  this.AryData=[]; //{ Date, Time, Up, Down }
45829
45830
  this.DefaultMax; //默认最大值
@@ -45832,6 +45833,74 @@ function ChartBaseLineBar()
45832
45833
  this.YBaseLine;
45833
45834
  this.BarMaxHeight; //{ Up:, Down: }
45834
45835
 
45836
+ this.DrawStyle2=function()
45837
+ {
45838
+ var bHScreen=(this.ChartFrame.IsHScreen===true);
45839
+ var bMinute=this.IsMinuteFrame();
45840
+ var dataWidth=this.ChartFrame.DataWidth;
45841
+ var distanceWidth=this.ChartFrame.DistanceWidth;
45842
+ var xPointCount=this.ChartFrame.XPointCount;
45843
+ var border=this.ChartFrame.GetBorder();
45844
+
45845
+ if (bHScreen)
45846
+ {
45847
+ var chartright=border.BottomEx;
45848
+ var xOffset=border.TopEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
45849
+ }
45850
+ else
45851
+ {
45852
+ var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
45853
+ var chartright=border.RightEx;
45854
+ }
45855
+
45856
+ this.Canvas.save();
45857
+ this.ClipClient(bHScreen);
45858
+
45859
+ this.YBaseLine=this.ChartFrame.GetYFromData(0, false);
45860
+ var aryUpBar=[], aryDownBar=[];
45861
+ for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j,xOffset+=(dataWidth+distanceWidth))
45862
+ {
45863
+ var kItem=this.Data.Data[i];
45864
+ if (!kItem) continue;
45865
+ var key=this.BuildKey(kItem);
45866
+ if (!this.MapCache.has(key)) continue;
45867
+
45868
+ var item=this.MapCache.get(key);
45869
+
45870
+ if (bMinute)
45871
+ {
45872
+ var x=this.ChartFrame.GetXFromIndex(j);
45873
+ }
45874
+ else
45875
+ {
45876
+ var left=xOffset;
45877
+ var right=xOffset+dataWidth;
45878
+ if (right>chartright) break;
45879
+ var x=left+(right-left)/2;
45880
+ }
45881
+
45882
+ if (IFrameSplitOperator.IsNumber(item.Up))
45883
+ {
45884
+ var value=Math.abs(item.Up);
45885
+ var y=this.ChartFrame.GetYFromData(value, false);
45886
+
45887
+ aryUpBar.push({ X:x, Y:y});
45888
+ }
45889
+
45890
+ if (IFrameSplitOperator.IsNumber(item.Down))
45891
+ {
45892
+ var value=Math.abs(item.Down)*-1;
45893
+ var y=this.ChartFrame.GetYFromData(value, false);
45894
+ aryDownBar.push({X:x, Y:y});
45895
+ }
45896
+ }
45897
+
45898
+ this.DrawBars(aryUpBar, this.UpColor);
45899
+ this.DrawBars(aryDownBar,this.DownColor);
45900
+
45901
+ this.Canvas.restore();
45902
+ }
45903
+
45835
45904
  this.Draw=function()
45836
45905
  {
45837
45906
  this.YBaseLine=null;
@@ -45842,6 +45911,14 @@ function ChartBaseLineBar()
45842
45911
  if (!this.HQChart) return;
45843
45912
  if(!this.Data || !IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) return;
45844
45913
  if (!IFrameSplitOperator.IsNumber(this.MaxValue)) return;
45914
+
45915
+ if (this.Style==1)
45916
+ {
45917
+ this.DrawStyle2();
45918
+ return;
45919
+ }
45920
+
45921
+
45845
45922
  this.CalculateBaseLine();
45846
45923
 
45847
45924
  if (!IFrameSplitOperator.IsNumber(this.YBaseLine)) return;
@@ -46009,7 +46086,30 @@ function ChartBaseLineBar()
46009
46086
 
46010
46087
  this.GetMaxMin=function()
46011
46088
  {
46012
- return {Min:null, Max:null};
46089
+ var range={Min:null, Max:null};
46090
+
46091
+ if (this.Style==1) //独立坐标
46092
+ {
46093
+ if (IFrameSplitOperator.IsNumber(this.DefaultMax)) range.Max=this.DefaultMax;
46094
+ range.Min=0;
46095
+
46096
+ var xPointCount=this.ChartFrame.XPointCount;
46097
+ for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j)
46098
+ {
46099
+ var kItem=this.Data.Data[i];
46100
+ if (!kItem) continue;
46101
+ var key=this.BuildKey(kItem);
46102
+ if (!this.MapCache.has(key)) continue;
46103
+
46104
+ var item=this.MapCache.get(key);
46105
+ var value=Math.abs(item.Up);
46106
+ if (range.Max==null || range.Max<value) range.Max=value;
46107
+ var value=Math.abs(item.Down)*-1;
46108
+ if (range.Min>value) range.Min=value;
46109
+ }
46110
+ }
46111
+
46112
+ return range;
46013
46113
  }
46014
46114
  }
46015
46115
 
@@ -129826,6 +129926,7 @@ function ScriptIndex(name,script,args,option)
129826
129926
  if (config.UpColor) chart.UpColor=config.UpColor;
129827
129927
  if (config.DownColor) chart.DownColor=config.DownColor;
129828
129928
  if (IFrameSplitOperator.IsNumber(config.DefaultMax)) chart.DefaultMax=config.DefaultMax;
129929
+ if (IFrameSplitOperator.IsNumber(config.Style)) chart.Style=config.Style;
129829
129930
  }
129830
129931
 
129831
129932
  chart.BuildCacheData();
@@ -131401,6 +131502,7 @@ function OverlayScriptIndex(name,script,args,option)
131401
131502
  if (config.UpColor) chart.UpColor=config.UpColor;
131402
131503
  if (config.DownColor) chart.DownColor=config.DownColor;
131403
131504
  if (IFrameSplitOperator.IsNumber(config.DefaultMax)) chart.DefaultMax=config.DefaultMax;
131505
+ if (IFrameSplitOperator.IsNumber(config.Style)) chart.Style=config.Style;
131404
131506
  }
131405
131507
 
131406
131508
  chart.BuildCacheData();
@@ -139048,7 +139150,7 @@ function JSReportChartContainer(uielement)
139048
139150
  return;
139049
139151
  }
139050
139152
 
139051
- if (!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) return;
139153
+ //if (!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) return;
139052
139154
  if (this.SortInfo && this.SortInfo.Field>=0 && this.SortInfo.Sort>0)
139053
139155
  {
139054
139156
  var column=chart.Column[this.SortInfo.Field];
@@ -139060,7 +139162,7 @@ function JSReportChartContainer(uielement)
139060
139162
  }
139061
139163
 
139062
139164
  var arySymbol=chart.ShowSymbol;
139063
- if (!IFrameSplitOperator.IsNonEmptyArray(arySymbol)) return;
139165
+ //if (!IFrameSplitOperator.IsNonEmptyArray(arySymbol)) return;
139064
139166
  this.RequestStockData(arySymbol);
139065
139167
  }
139066
139168
 
@@ -141915,10 +142017,15 @@ function JSReportChartContainer(uielement)
141915
142017
  if (!chart) return;
141916
142018
 
141917
142019
  var self=this;
141918
- var startIndex=this.Data.YOffset;
141919
142020
  var pageSize=chart.GetPageSize();
141920
- var endIndex=startIndex+pageSize;
141921
- if (endIndex>=this.Data.Data.length) endIndex=this.Data.Data.length-1;
142021
+ var endIndex=0;
142022
+ var startIndex=0;
142023
+ if (IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))
142024
+ {
142025
+ startIndex=this.Data.YOffset;
142026
+ endIndex=startIndex+pageSize;
142027
+ if (endIndex>=this.Data.Data.length) endIndex=this.Data.Data.length-1;
142028
+ }
141922
142029
 
141923
142030
  if (this.NetworkFilter)
141924
142031
  {
@@ -142623,7 +142730,7 @@ function ChartReport()
142623
142730
  this.RectClient={};
142624
142731
 
142625
142732
  //{ Rect:rtItem, Stock:stock, Index:index, Column:column, RowType:rowType, Type:drawInfo.Tooltip.Type, Data:{ AryText:[ {Text:xx} ]} };
142626
- //Type:1=数据截断 2=表头提示信息 20=分时图
142733
+ //Type:1=数据截断 2=表头提示信息 4=提示信息 20=分时图 21=K线
142627
142734
  // { Text, Color, Title:, TitleColor, Space, Margin:{ Left, Top, Right, Bottom }}
142628
142735
  this.TooltipRect=[];
142629
142736
 
@@ -144507,7 +144614,7 @@ function ChartReport()
144507
144614
  //tooltip提示
144508
144615
  if (drawInfo.Tooltip)
144509
144616
  {
144510
- //Type:1=数据截断
144617
+ //Type:1=数据截断 4=提示信息
144511
144618
  var tooltipData={ Rect:rtItem, Stock:stock, Index:index, Column:column, RowType:rowType, Type:drawInfo.Tooltip.Type, Data:drawInfo.Tooltip.Data };
144512
144619
  this.TooltipRect.push(tooltipData);
144513
144620
  }
@@ -144650,10 +144757,13 @@ function ChartReport()
144650
144757
  this.Canvas.clip();
144651
144758
 
144652
144759
  //数据截断提示信息
144653
- drawInfo.Tooltip=
144654
- {
144655
- Type:1,
144656
- Data:{ AryText:[ {Text:drawInfo.Text} ] }
144760
+ if (!drawInfo.Tooltip)
144761
+ {
144762
+ drawInfo.Tooltip=
144763
+ {
144764
+ Type:1,
144765
+ Data:{ AryText:[ {Text:drawInfo.Text} ] }
144766
+ }
144657
144767
  }
144658
144768
  }
144659
144769
 
@@ -145025,6 +145135,15 @@ function ChartReport()
145025
145135
  if (item.Text) drawInfo.Text=item.Text;
145026
145136
  if (item.TextColor) drawInfo.TextColor=item.TextColor;
145027
145137
  if (item.BGColor) drawInfo.BGColor=item.BGColor;
145138
+
145139
+ if (item.Tooltip && IFrameSplitOperator.IsNonEmptyArray(item.Tooltip.AryText))
145140
+ {
145141
+ drawInfo.Tooltip=
145142
+ {
145143
+ Type:4,
145144
+ Data:{ AryText:item.Tooltip.AryText }
145145
+ }
145146
+ }
145028
145147
  }
145029
145148
  else if (IFrameSplitOperator.IsString(item))
145030
145149
  {
@@ -150910,7 +151029,7 @@ function ScrollBarBGChart()
150910
151029
 
150911
151030
 
150912
151031
 
150913
- var HQCHART_VERSION="1.1.14902";
151032
+ var HQCHART_VERSION="1.1.14909";
150914
151033
 
150915
151034
  function PrintHQChartVersion()
150916
151035
  {
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var HQCHART_VERSION="1.1.14902";
8
+ var HQCHART_VERSION="1.1.14909";
9
9
 
10
10
  function PrintHQChartVersion()
11
11
  {