hqchart 1.1.15356 → 1.1.15360

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.
@@ -1490,7 +1490,9 @@ if(item.IsShowRightText==false)chart.Frame.SubFrame[i].Frame.YSplitOperator.IsSh
1490
1490
  {for(var i=0;i<option.Overlay.length;++i){var item=option.Overlay[i];chart.OverlaySymbol(item.Symbol,item);}}if(option.ExtendChart){for(var i=0;i<option.ExtendChart.length;++i){var item=option.ExtendChart[i];chart.CreateExtendChart(item.Name,item);}}if(IFrameSplitOperator.IsNonEmptyArray(option.Windows)){//创建子窗口的指标
1491
1491
  for(var i=0;i<option.Windows.length;++i){var item=option.Windows[i];if(item.Script){chart.WindowIndex[i]=new ScriptIndex(item.Name,item.Script,item.Args,item);//脚本执行
1492
1492
  }else{var indexItem=JSIndexMap.Get(item.Index);if(indexItem){chart.WindowIndex[i]=indexItem.Create();chart.CreateWindowIndex(i);}else{var scriptData=new JSIndexScript();var indexInfo=scriptData.Get(item.Index);if(!indexInfo)continue;if(item.Lock)indexInfo.Lock=item.Lock;chart.WindowIndex[i]=new ScriptIndex(indexInfo.Name,indexInfo.Script,indexInfo.Args,indexInfo);//脚本执行
1493
- }}if(item.Modify!=null)chart.Frame.SubFrame[i].Frame.ModifyIndex=item.Modify;if(item.Change!=null)chart.Frame.SubFrame[i].Frame.ChangeIndex=item.Change;if(item.Close!=null)chart.Frame.SubFrame[i].Frame.CloseIndex=item.Close;if(item.Overlay!=null)frame.OverlayIndex=item.Overlay;if(IFrameSplitOperator.IsBool(item.Export))frame.ExportData=item.Export;if(IFrameSplitOperator.IsBool(item.MaxMin))chart.Frame.SubFrame[i].Frame.MaxMinWindow=item.MaxMin;if(IFrameSplitOperator.IsBool(item.TitleWindow))chart.Frame.SubFrame[i].Frame.TitleWindow=item.TitleWindow;if(IFrameSplitOperator.IsBool(item.IsDrawTitleBG))chart.Frame.SubFrame[i].Frame.IsDrawTitleBG=item.IsDrawTitleBG;if(IFrameSplitOperator.IsBool(item.IsShowNameArrow))chart.Frame.SubFrame[i].Frame.IsShowNameArrow=item.IsShowNameArrow;if(IFrameSplitOperator.IsNumber(item.TitleHeight))chart.Frame.SubFrame[i].Frame.ChartBorder.TitleHeight=item.TitleHeight;if(IFrameSplitOperator.IsBool(item.IsShowTitleArrow))chart.Frame.SubFrame[i].Frame.IsShowTitleArrow=item.IsShowTitleArrow;if(item.IsShowIndexName==false)chart.Frame.SubFrame[i].Frame.IsShowIndexName=false;if(item.IsShowOverlayIndexName==false)chart.Frame.SubFrame[i].Frame.IsShowOverlayIndexName=false;if(IFrameSplitOperator.IsNumber(item.IndexParamSpace))chart.Frame.SubFrame[i].Frame.IndexParamSpace=item.IndexParamSpace;if(IFrameSplitOperator.IsNumber(item.IndexTitleSpace))chart.Frame.SubFrame[i].Frame.IndexTitleSpace=item.IndexTitleSpace;}}this.AdjustTitleHeight(chart);return chart;};//深度图
1493
+ }}chart.SetSubFrameAttribute(chart.Frame.SubFrame[i],item,null);}}//叠加指标宽度
1494
+ if(option.OverlayIndexFrameWidth>40)chart.Frame.FixedRightWidth.Overlay=option.OverlayIndexFrameWidth;//叠加指标
1495
+ if(IFrameSplitOperator.IsNonEmptyArray(option.OverlayIndex)){for(var i=0;i<option.OverlayIndex.length;++i){var item=option.OverlayIndex[i];if(item.Windows>=chart.Frame.SubFrame.length)continue;var itemString=(0,_stringify2.default)(item);var obj=JSON.parse(itemString);if(item.Index)obj.IndexName=item.Index;if(item.Windows>=0)obj.WindowIndex=item.Windows;chart.CreateOverlayWindowsIndex(obj);}}this.AdjustTitleHeight(chart);return chart;};//深度图
1494
1496
  this.CreateDepthChartContainer=function(option){var chart=null;chart=new DepthChartContainer(this.CanvasElement);if(option.NetworkFilter)chart.NetworkFilter=option.NetworkFilter;if(option.EnableScrollUpDown==true)chart.EnableScrollUpDown=option.EnableScrollUpDown;if(IFrameSplitOperator.IsPlusNumber(option.MaxVolRate))chart.MaxVolRate=option.MaxVolRate;if(option.ZoomStepPixel>0)chart.ZoomStepPixel=option.ZoomStepPixel;if(IFrameSplitOperator.IsString(option.SplashTitle))chart.LoadDataSplashTitle=option.SplashTitle;if(IFrameSplitOperator.IsBool(option.EnableVerifyRecvData))chart.EnableVerifyRecvData=option.EnableVerifyRecvData;if(option.Language){var value=g_JSChartLocalization.GetLanguageID(option.Language);if(IFrameSplitOperator.IsNumber(value))chart.LanguageID=value;}chart.Create(option.Listener);if(option.Border){if(IFrameSplitOperator.IsNumber(option.Border.Left))chart.Frame.ChartBorder.Left=option.Border.Left;else option.Border.Left=chart.Frame.ChartBorder.Left;if(IFrameSplitOperator.IsNumber(option.Border.Right))chart.Frame.ChartBorder.Right=option.Border.Right;else option.Border.Right=chart.Frame.ChartBorder.Right;if(IFrameSplitOperator.IsNumber(option.Border.Top))chart.Frame.ChartBorder.Top=option.Border.Top;else option.Border.Top=chart.Frame.ChartBorder.Top;if(IFrameSplitOperator.IsNumber(option.Border.Bottom))chart.Frame.ChartBorder.Bottom=option.Border.Bottom;else option.Border.Bottom=chart.Frame.ChartBorder.Bottom;}this.AdjustChartBorder(chart);if(option.CorssCursorTouchEnd===true)chart.CorssCursorTouchEnd=option.CorssCursorTouchEnd;if(option.CorssCursorInfo){var item=option.CorssCursorInfo;if(IFrameSplitOperator.IsNumber(item.HPenType))chart.ChartCorssCursor.HPenType=item.HPenType;if(IFrameSplitOperator.IsNumber(item.VPenType))chart.ChartCorssCursor.VPenType=item.VPenType;if(IFrameSplitOperator.IsBool(item.IsShowTooltip))chart.ChartCorssCursor.IsShowTooltip=item.IsShowTooltip;}if(option.Frame){var item=option.Frame;if(item.SplitCount)chart.Frame.YSplitOperator.SplitCount=item.SplitCount;if(IFrameSplitOperator.IsNumber(item.SplitType))chart.Frame.YSplitOperator.SplitType=item.SplitType;if(IFrameSplitOperator.IsNumber(item.Height))chart.Frame.Height=item.Height;if(IFrameSplitOperator.IsNumber(item.YLineType))chart.Frame.YSplitOperator.LineType=item.YLineType;if(IFrameSplitOperator.IsNumber(item.XLineType))chart.Frame.XSplitOperator.LineType=item.XLineType;if(Array.isArray(item.IgnoreYValue))chart.Frame.YSplitOperator.IgnoreYValue=item.IgnoreYValue;if(item.IsShowLeftText===false||item.IsShowLeftText===true){chart.Frame.IsShowYText[0]=item.IsShowLeftText;chart.Frame.YSplitOperator.IsShowLeftText=item.IsShowLeftText;//显示左边刻度
1495
1497
  }if(item.IsShowRightText===false||item.IsShowRightText===true){chart.Frame.IsShowYText[1]=item.IsShowRightText;chart.Frame.YSplitOperator.IsShowRightText=item.IsShowRightText;//显示右边刻度
1496
1498
  }if(item.IsShowXLine==false)chart.Frame.IsShowXLine=item.IsShowXLine;if(item.IsShowYLine==false)chart.Frame.IsShowYLine=item.IsShowYLine;if(IFrameSplitOperator.IsNumber(item.XSplitCount))chart.Frame.XSplitOperator.SplitCount=item.XSplitCount;//X轴刻度个数 半边的
@@ -4352,6 +4354,7 @@ this.newMethod();delete this.newMethod;this.ClassName='ChartKLineTable';//类名
4352
4354
  this.Data;this.RowName;this.RowNamePosition=1;//0=不显示 1=左边内部 2=左边外部 3=右边外部
4353
4355
  this.BGColor;//背景色
4354
4356
  this.BorderColor;//分割线颜色
4357
+ this.AryBorderColor;//分割线颜色
4355
4358
  this.RowCount=5;//行数
4356
4359
  this.RowHeight=10;//行高
4357
4360
  this.RowHeightType=1;//0=均分 1=固定高度
@@ -4359,8 +4362,8 @@ this.TextFontConfig=CloneData(g_JSChartResource.ChartKLineTable.TextFont);this.I
4359
4362
  this.AryTableData=[];this.MapCache=null;//key=date/date-time value={ Date:, Time:, Data:[ ] }
4360
4363
  this.GetKValue=ChartData.GetKValue;this.AryCellRect=[];//保存单元格信息
4361
4364
  this.AryNameRect=[];//右侧行的名字
4362
- this.SetOption=function(option){if(!option)return;if(option.BGColor)this.BGColor=option.BGColor;if(option.TextColor)this.TextColor=option.TextColor;if(option.BorderColor)this.BorderColor=option.BorderColor;if(IFrameSplitOperator.IsNumber(option.RowNamePosition))this.RowNamePosition=option.RowNamePosition;if(IFrameSplitOperator.IsNumber(option.RowHeightType))this.RowHeightType=option.RowHeightType;if(IFrameSplitOperator.IsNumber(option.Style))this.Style=option.Style;if(option.ItemMargin){var subItem=option.ItemMargin;if(IFrameSplitOperator.IsNumber(subItem.Left))this.ItemMargin.Left=subItem.Left;if(IFrameSplitOperator.IsNumber(subItem.Top))this.ItemMargin.Top=subItem.Top;if(IFrameSplitOperator.IsNumber(subItem.Bottom))this.ItemMargin.Bottom=subItem.Bottom;if(IFrameSplitOperator.IsNumber(subItem.Right))this.ItemMargin.Right=subItem.Right;if(IFrameSplitOperator.IsNumber(subItem.YOffset))this.ItemMargin.YOffset=subItem.YOffset;}if(option.TextFont){var subItem=option.TextFont;if(IFrameSplitOperator.IsNumber(subItem.FontMaxSize))this.TextFontConfig.FontMaxSize=subItem.FontMaxSize;if(subItem.Family)this.TextFontConfig.Family=subItem.Family;}if(IFrameSplitOperator.IsPlusNumber(option.CellWidth))this.CellWidth=option.CellWidth;};this.BuildCacheData=function(){var mapData=new _map2.default();this.MapCache=mapData;if(!IFrameSplitOperator.IsNonEmptyArray(this.AryTableData))return;for(var i=0;i<this.AryTableData.length;++i){var item=this.AryTableData[i];var key=this.BuildKey(item);mapData.set(key,item);}};//绘制背景色
4363
- this.DrawBG=function(rtBG){if(!this.BGColor)return;this.Canvas.fillStyle=this.BGColor;if((this.Style===1||this.Style===2)&&this.RowHeightType==1){var height=this.RowCount*this.RowHeight;height=Math.min(rtBG.Height,height);this.Canvas.fillRect(rtBG.Left+1,rtBG.Top,rtBG.Width-2,height);}else{this.Canvas.fillRect(rtBG.Left+1,rtBG.Top,rtBG.Width-1,rtBG.Height);}};this.DrawBorder=function(rtBG){if(!this.BorderColor)return;var lineCount=30;if(this.Style===1||this.Style===2)lineCount=this.RowCount+1;this.Canvas.strokeStyle=this.BorderColor;var yLine=rtBG.Top;for(var i=0;i<lineCount;++i){this.Canvas.beginPath();this.Canvas.moveTo(rtBG.Left,ToFixedPoint(yLine));this.Canvas.lineTo(rtBG.Right,ToFixedPoint(yLine));this.Canvas.stroke();yLine+=this.RowHeight;if(yLine>rtBG.Bottom)break;}};//计算行高
4365
+ this.SetOption=function(option){if(!option)return;if(option.BGColor)this.BGColor=option.BGColor;if(option.TextColor)this.TextColor=option.TextColor;if(option.BorderColor)this.BorderColor=option.BorderColor;if(IFrameSplitOperator.IsNumber(option.RowNamePosition))this.RowNamePosition=option.RowNamePosition;if(IFrameSplitOperator.IsNumber(option.RowHeightType))this.RowHeightType=option.RowHeightType;if(IFrameSplitOperator.IsNumber(option.Style))this.Style=option.Style;if(option.ItemMargin){var subItem=option.ItemMargin;if(IFrameSplitOperator.IsNumber(subItem.Left))this.ItemMargin.Left=subItem.Left;if(IFrameSplitOperator.IsNumber(subItem.Top))this.ItemMargin.Top=subItem.Top;if(IFrameSplitOperator.IsNumber(subItem.Bottom))this.ItemMargin.Bottom=subItem.Bottom;if(IFrameSplitOperator.IsNumber(subItem.Right))this.ItemMargin.Right=subItem.Right;if(IFrameSplitOperator.IsNumber(subItem.YOffset))this.ItemMargin.YOffset=subItem.YOffset;}if(option.TextFont){var subItem=option.TextFont;if(IFrameSplitOperator.IsNumber(subItem.FontMaxSize))this.TextFontConfig.FontMaxSize=subItem.FontMaxSize;if(subItem.Family)this.TextFontConfig.Family=subItem.Family;}if(IFrameSplitOperator.IsPlusNumber(option.CellWidth))this.CellWidth=option.CellWidth;if(IFrameSplitOperator.IsNonEmptyArray(option.AryBorderColor))this.AryBorderColor=option.AryBorderColor.slice();};this.BuildCacheData=function(){var mapData=new _map2.default();this.MapCache=mapData;if(!IFrameSplitOperator.IsNonEmptyArray(this.AryTableData))return;for(var i=0;i<this.AryTableData.length;++i){var item=this.AryTableData[i];var key=this.BuildKey(item);mapData.set(key,item);}};//绘制背景色
4366
+ this.DrawBG=function(rtBG){if(!this.BGColor)return;this.Canvas.fillStyle=this.BGColor;if((this.Style===1||this.Style===2)&&this.RowHeightType==1){var height=this.RowCount*this.RowHeight;height=Math.min(rtBG.Height,height);this.Canvas.fillRect(rtBG.Left+1,rtBG.Top,rtBG.Width-2,height);}else{this.Canvas.fillRect(rtBG.Left+1,rtBG.Top,rtBG.Width-1,rtBG.Height);}};this.DrawBorder=function(rtBG){if(!this.BorderColor)return;var lineCount=30;if(this.Style===1||this.Style===2)lineCount=this.RowCount+1;var yLine=rtBG.Top;for(var i=0;i<lineCount;++i){var borderColor=this.BorderColor;if(this.AryBorderColor&&this.AryBorderColor[i])borderColor=this.AryBorderColor[i];this.Canvas.strokeStyle=borderColor;this.Canvas.beginPath();this.Canvas.moveTo(rtBG.Left,ToFixedPoint(yLine));this.Canvas.lineTo(rtBG.Right,ToFixedPoint(yLine));this.Canvas.stroke();yLine+=this.RowHeight;if(yLine>rtBG.Bottom)break;}};//计算行高
4364
4367
  this.CalculateRowHeight=function(rtBG){if(this.RowHeightType==1){this.RowHeight=this.TextFontConfig.FontMaxSize+this.ItemMargin.Top+this.ItemMargin.Bottom;}else{this.RowHeight=rtBG.Height/this.RowCount;}};this.Draw=function(){this.AryCellRect=[];this.AryNameRect=[];if(!this.IsShow||this.ChartFrame.IsMinSize||!this.IsVisible)return;if(this.IsShowIndexTitleOnly())return;if(this.IsHideScriptIndex())return;if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return;//if (!IFrameSplitOperator.IsNonEmptyArray(this.AryTableData)) return;
4365
4368
  //if (!this.MapCache || this.MapCache.size<=0) return;
4366
4369
  var isHScreen=this.ChartFrame.IsHScreen===true;if(isHScreen)return;if(this.RowCount<=0)return;var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;var xPointCount=this.ChartFrame.XPointCount;var border=this.ChartFrame.GetBorder();var height=border.Bottom-border.TopTitle;var xOffset=border.LeftEx+g_JSChartResource.FrameLeftMargin;var chartright=border.RightEx;var top=border.TopTitle;var bottom=border.Bottom;//绘制背景
@@ -15766,7 +15769,7 @@ hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,St
15766
15769
  this.ExecuteScript(item,data);}this.Status=0;}};this.OnExecuteFinish=function(data,indexInfo,jsExectute,jobInfo){var message={Data:data,IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.FINISH_EXECUTE_SCRIPT,JobInfo:jobInfo};postMessage(message);};this.OnExecuteError=function(error,indexInfo,jobData){var message={IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.ERROR_EXECUTE_SCRIPT,Error:error};postMessage(message);};}/********************************************************************************
15767
15770
  * 版本信息输出
15768
15771
  *
15769
- */var HQCHART_VERSION="1.1.15355";function PrintHQChartVersion(){var logo='\n\n*************************************************************************************************************************************************************************** \n* \n* :%@@- \n* :@@@@- \n* =@@@@ :#@@@ .:+#@@@#=: :=*@@@@@@#+-. *@@@@. \n* :@@@@@ .@@@@@ .#@@@@@@@@@@@- +@@@@@@@@@@@@@+ @@@@@ -%@@* \n* +@@@@% #@@@@# *@@@@@@@@@@@@@@%. =@@@@@@@@@@@@@@@- @@@@@ -@@@@+ \n* %@@@@* @@@@@+ .%@@@@@@@@@@@@@@@@%: #@@@@@@@@@@@@@@@% @@@@# *@@@@= \n* @@@@@= @@@@@- .%@@@@@@@*++*%@@@@@@% .%@@@@@@@%*+==+**= -@@@@+ #@@@@- \n* @@@@@. @@@@@. #@@@@@%= =@@@@@@* %@@@@@@#: *@@@@- :::. .-+*###+: ::: .+##+: -%%@@@@@%%%% \n* .@@@@@ .@@@@@. +@@@@@% .@@@@@@ *@@@@@@: %@@@@: +@@@@@%. :%@@@@@@@@@@: *@@@ :@@@@@* @@@@@@@@@@@@ \n* :@@@@@ :@@@@@ @@@@@% :@@@@@+ @@@@@@: %@@@@-@@@@@@@@@. @@@@@@@@@@@@@. :@@@%-@@@@@@.:@@@@@@@@@@@# \n* -@@@@% -@@@@@ =@@@@@. %@@@@% %@@@@@- %@@@@@@@@@@@@@@* %@@@@@@@@@@@@+ -@@@@@@@@@@# -@@@@@@@@@@@. \n* +@@@@%=========#@@@@% @@@@@# :@@@@@ .@@@@@% @@@@@@@@%@@@@@@@ -%+:. .#@@@@* +@@@@@@@%%@. .::+@@@@#:: \n* #@@@@@@@@@@@@@@@@@@@# .@@@@@ .@@@@@ :@@@@@. @@@@@@#. #@@@@@. -@@@@* #@@@@@@: *@@@@+ \n* %@@@@@@@@@@@@@@@@@@@+ :@@@@@ .@@@@@ -@@@@@ @@@@@+ @@@@@. :@@@@* @@@@@% #@@@@- \n* @@@@@@@@@@@@@@@@@@@@: :@@@@% :@@@@@ +@@@@% -@@@@+ @@@@@ -@@@@+ @@@@@. @@@@@. \n* .@@@@@@@@@@@@@@@@@@@@ :@@@@% -@@@@% *@@@@% #@@@@. @@@@@ .=*#%%%@@@@@= :@@@@# @@@@@. \n* -@@@@@:::::::::=@@@@@ :@@@@@ @@@@@* +@@@@% @@@@@ @@@@% -#@@@@@@@@@@@@: -@@@@* @@@@@ \n* =@@@@% =@@@@% .@@@@@ :@@@@@. -@@@@% @@@@@ .@@@@* +@@@@@@@@@@@@@@. =@@@@+ .@@@@@ \n* +@@@@# +@@@@# @@@@@# %@@@@% :@@@@@ .@@@@% =@@@@= -@@@@@*-:..%@@@@ +@@@@= :@@@@# \n* *@@@@* *@@@@* +@@@@@: #@@@@@+ .@@@@@@ :@@@@% *@@@@- @@@@@. @@@@% #@@@@: =@@@@+ \n* %@@@@= %@@@@+ @@@@@@- .%@@@@@# #@@@@@# :@@@@% #@@@@: @@@@% @@@@* %@@@@. #@@@@- \n* @@@@@- @@@@@= =@@@@@@#=...-*@@@@@@@: @@@@@@%=. :+**. :@@@@* %@@@@. .@@@@* *@@@@= @@@@@ %@@@@+ \n* .@@@@@: .@@@@@: *@@@@@@@@@@@@@@@@@@@# =@@@@@@@@%%%@@@@@@ +@@@@- @@@@@ .@@@@@: :%@@@@@- .@@@@% %@@@@@*+- \n* :@@@@@ :@@@@@ +@@@@@@@@@@@@@@@@@@@# =@@@@@@@@@@@@@@@@% %@@@@ @@@@@ @@@@@@@@@@@@@@@: -@@@@* *@@@@@@@@- \n* =@@@@@ -@@@@@ :@@@@@@@@@@@@@@@@@@@# :@@@@@@@@@@@@@@@% @@@@@ %@@@% #@@@@@@@@@#@@@@. +@@@@- .@@@@@@@@# \n* *@@@@# =@@@@% :#@@@@@@@#: :@@@@@= =@@@@@@@@@@@+. @@@@@ :@@@+ *@@@@@@@- %@@@ *@@@= =@@@@@@@* \n* =++++- -++++= .:::. .=*+: :-=+++=:. ****= .=+. .-++=: :+++ -+=: .-=+=:. \n* \n* \n* HQChart \n* Ver: '+HQCHART_VERSION+' \n* License: Apache License 2.0 \n* Source: https://github.com/jones2000/HQChart\n*\n************************************************************************************************************************************************************************** \n ';console.log(logo);}PrintHQChartVersion();//把给外界调用的方法暴露出来
15772
+ */var HQCHART_VERSION="1.1.15359";function PrintHQChartVersion(){var logo='\n\n*************************************************************************************************************************************************************************** \n* \n* :%@@- \n* :@@@@- \n* =@@@@ :#@@@ .:+#@@@#=: :=*@@@@@@#+-. *@@@@. \n* :@@@@@ .@@@@@ .#@@@@@@@@@@@- +@@@@@@@@@@@@@+ @@@@@ -%@@* \n* +@@@@% #@@@@# *@@@@@@@@@@@@@@%. =@@@@@@@@@@@@@@@- @@@@@ -@@@@+ \n* %@@@@* @@@@@+ .%@@@@@@@@@@@@@@@@%: #@@@@@@@@@@@@@@@% @@@@# *@@@@= \n* @@@@@= @@@@@- .%@@@@@@@*++*%@@@@@@% .%@@@@@@@%*+==+**= -@@@@+ #@@@@- \n* @@@@@. @@@@@. #@@@@@%= =@@@@@@* %@@@@@@#: *@@@@- :::. .-+*###+: ::: .+##+: -%%@@@@@%%%% \n* .@@@@@ .@@@@@. +@@@@@% .@@@@@@ *@@@@@@: %@@@@: +@@@@@%. :%@@@@@@@@@@: *@@@ :@@@@@* @@@@@@@@@@@@ \n* :@@@@@ :@@@@@ @@@@@% :@@@@@+ @@@@@@: %@@@@-@@@@@@@@@. @@@@@@@@@@@@@. :@@@%-@@@@@@.:@@@@@@@@@@@# \n* -@@@@% -@@@@@ =@@@@@. %@@@@% %@@@@@- %@@@@@@@@@@@@@@* %@@@@@@@@@@@@+ -@@@@@@@@@@# -@@@@@@@@@@@. \n* +@@@@%=========#@@@@% @@@@@# :@@@@@ .@@@@@% @@@@@@@@%@@@@@@@ -%+:. .#@@@@* +@@@@@@@%%@. .::+@@@@#:: \n* #@@@@@@@@@@@@@@@@@@@# .@@@@@ .@@@@@ :@@@@@. @@@@@@#. #@@@@@. -@@@@* #@@@@@@: *@@@@+ \n* %@@@@@@@@@@@@@@@@@@@+ :@@@@@ .@@@@@ -@@@@@ @@@@@+ @@@@@. :@@@@* @@@@@% #@@@@- \n* @@@@@@@@@@@@@@@@@@@@: :@@@@% :@@@@@ +@@@@% -@@@@+ @@@@@ -@@@@+ @@@@@. @@@@@. \n* .@@@@@@@@@@@@@@@@@@@@ :@@@@% -@@@@% *@@@@% #@@@@. @@@@@ .=*#%%%@@@@@= :@@@@# @@@@@. \n* -@@@@@:::::::::=@@@@@ :@@@@@ @@@@@* +@@@@% @@@@@ @@@@% -#@@@@@@@@@@@@: -@@@@* @@@@@ \n* =@@@@% =@@@@% .@@@@@ :@@@@@. -@@@@% @@@@@ .@@@@* +@@@@@@@@@@@@@@. =@@@@+ .@@@@@ \n* +@@@@# +@@@@# @@@@@# %@@@@% :@@@@@ .@@@@% =@@@@= -@@@@@*-:..%@@@@ +@@@@= :@@@@# \n* *@@@@* *@@@@* +@@@@@: #@@@@@+ .@@@@@@ :@@@@% *@@@@- @@@@@. @@@@% #@@@@: =@@@@+ \n* %@@@@= %@@@@+ @@@@@@- .%@@@@@# #@@@@@# :@@@@% #@@@@: @@@@% @@@@* %@@@@. #@@@@- \n* @@@@@- @@@@@= =@@@@@@#=...-*@@@@@@@: @@@@@@%=. :+**. :@@@@* %@@@@. .@@@@* *@@@@= @@@@@ %@@@@+ \n* .@@@@@: .@@@@@: *@@@@@@@@@@@@@@@@@@@# =@@@@@@@@%%%@@@@@@ +@@@@- @@@@@ .@@@@@: :%@@@@@- .@@@@% %@@@@@*+- \n* :@@@@@ :@@@@@ +@@@@@@@@@@@@@@@@@@@# =@@@@@@@@@@@@@@@@% %@@@@ @@@@@ @@@@@@@@@@@@@@@: -@@@@* *@@@@@@@@- \n* =@@@@@ -@@@@@ :@@@@@@@@@@@@@@@@@@@# :@@@@@@@@@@@@@@@% @@@@@ %@@@% #@@@@@@@@@#@@@@. +@@@@- .@@@@@@@@# \n* *@@@@# =@@@@% :#@@@@@@@#: :@@@@@= =@@@@@@@@@@@+. @@@@@ :@@@+ *@@@@@@@- %@@@ *@@@= =@@@@@@@* \n* =++++- -++++= .:::. .=*+: :-=+++=:. ****= .=+. .-++=: :+++ -+=: .-=+=:. \n* \n* \n* HQChart \n* Ver: '+HQCHART_VERSION+' \n* License: Apache License 2.0 \n* Source: https://github.com/jones2000/HQChart\n*\n************************************************************************************************************************************************************************** \n ';console.log(logo);}PrintHQChartVersion();//把给外界调用的方法暴露出来
15770
15773
  exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
15771
15774
  // BaseIndex:BaseIndex,
15772
15775
  // ChartLine:ChartLine,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hqchart",
3
- "version": "1.1.15356",
3
+ "version": "1.1.15360",
4
4
  "description": "HQChart - H5, 微信小程序 沪深/港股/数字货币/期货/美股 K线图(kline),走势图,缩放,拖拽,十字光标,画图工具,截图,筹码图. 分析家语法,通达信语法,(麦语法),第3方数据对接",
5
5
  "main": "lib/main.js",
6
6
  "scripts": {
@@ -1794,22 +1794,26 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
1794
1794
 
1795
1795
  }
1796
1796
 
1797
- if (item.Modify!=null) chart.Frame.SubFrame[i].Frame.ModifyIndex=item.Modify;
1798
- if (item.Change!=null) chart.Frame.SubFrame[i].Frame.ChangeIndex=item.Change;
1799
- if (item.Close!=null) chart.Frame.SubFrame[i].Frame.CloseIndex=item.Close;
1800
- if (item.Overlay!=null) frame.OverlayIndex=item.Overlay;
1801
- if (IFrameSplitOperator.IsBool(item.Export)) frame.ExportData=item.Export;
1802
- if (IFrameSplitOperator.IsBool(item.MaxMin)) chart.Frame.SubFrame[i].Frame.MaxMinWindow=item.MaxMin;
1803
- if (IFrameSplitOperator.IsBool(item.TitleWindow)) chart.Frame.SubFrame[i].Frame.TitleWindow=item.TitleWindow;
1804
- if (IFrameSplitOperator.IsBool(item.IsDrawTitleBG)) chart.Frame.SubFrame[i].Frame.IsDrawTitleBG=item.IsDrawTitleBG;
1805
- if (IFrameSplitOperator.IsBool(item.IsShowNameArrow)) chart.Frame.SubFrame[i].Frame.IsShowNameArrow=item.IsShowNameArrow;
1797
+ chart.SetSubFrameAttribute(chart.Frame.SubFrame[i],item, null)
1798
+ }
1799
+ }
1806
1800
 
1807
- if (IFrameSplitOperator.IsNumber(item.TitleHeight)) chart.Frame.SubFrame[i].Frame.ChartBorder.TitleHeight=item.TitleHeight;
1808
- if (IFrameSplitOperator.IsBool(item.IsShowTitleArrow)) chart.Frame.SubFrame[i].Frame.IsShowTitleArrow=item.IsShowTitleArrow;
1809
- if (item.IsShowIndexName==false) chart.Frame.SubFrame[i].Frame.IsShowIndexName=false;
1810
- if (item.IsShowOverlayIndexName==false) chart.Frame.SubFrame[i].Frame.IsShowOverlayIndexName=false;
1811
- if (IFrameSplitOperator.IsNumber(item.IndexParamSpace)) chart.Frame.SubFrame[i].Frame.IndexParamSpace=item.IndexParamSpace;
1812
- if (IFrameSplitOperator.IsNumber(item.IndexTitleSpace)) chart.Frame.SubFrame[i].Frame.IndexTitleSpace=item.IndexTitleSpace;
1801
+ //叠加指标宽度
1802
+ if (option.OverlayIndexFrameWidth>40) chart.Frame.FixedRightWidth.Overlay=option.OverlayIndexFrameWidth;
1803
+
1804
+ //叠加指标
1805
+ if (IFrameSplitOperator.IsNonEmptyArray(option.OverlayIndex))
1806
+ {
1807
+ for(var i=0;i<option.OverlayIndex.length;++i)
1808
+ {
1809
+ var item=option.OverlayIndex[i];
1810
+ if (item.Windows>=chart.Frame.SubFrame.length) continue;
1811
+
1812
+ var itemString = JSON.stringify(item);
1813
+ var obj = JSON.parse(itemString);
1814
+ if (item.Index) obj.IndexName=item.Index;
1815
+ if (item.Windows>=0) obj.WindowIndex=item.Windows;
1816
+ chart.CreateOverlayWindowsIndex(obj);
1813
1817
  }
1814
1818
  }
1815
1819
 
@@ -34471,6 +34475,7 @@ function ChartKLineTable()
34471
34475
  this.RowNamePosition=1; //0=不显示 1=左边内部 2=左边外部 3=右边外部
34472
34476
  this.BGColor; //背景色
34473
34477
  this.BorderColor; //分割线颜色
34478
+ this.AryBorderColor;//分割线颜色
34474
34479
 
34475
34480
  this.RowCount=5; //行数
34476
34481
  this.RowHeight=10; //行高
@@ -34519,6 +34524,8 @@ function ChartKLineTable()
34519
34524
  }
34520
34525
 
34521
34526
  if (IFrameSplitOperator.IsPlusNumber(option.CellWidth)) this.CellWidth=option.CellWidth;
34527
+
34528
+ if (IFrameSplitOperator.IsNonEmptyArray(option.AryBorderColor)) this.AryBorderColor=option.AryBorderColor.slice();
34522
34529
  }
34523
34530
 
34524
34531
  this.BuildCacheData=function()
@@ -34560,10 +34567,14 @@ function ChartKLineTable()
34560
34567
  var lineCount=30;
34561
34568
  if (this.Style===1 || this.Style===2) lineCount=this.RowCount+1;
34562
34569
 
34563
- this.Canvas.strokeStyle=this.BorderColor;
34564
34570
  var yLine=rtBG.Top;
34565
34571
  for(var i=0;i<lineCount;++i)
34566
34572
  {
34573
+ var borderColor=this.BorderColor;
34574
+ if (this.AryBorderColor && this.AryBorderColor[i])
34575
+ borderColor=this.AryBorderColor[i];
34576
+
34577
+ this.Canvas.strokeStyle=borderColor
34567
34578
  this.Canvas.beginPath();
34568
34579
  this.Canvas.moveTo(rtBG.Left,ToFixedPoint(yLine));
34569
34580
  this.Canvas.lineTo(rtBG.Right,ToFixedPoint(yLine));
@@ -5890,22 +5890,26 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
5890
5890
 
5891
5891
  }
5892
5892
 
5893
- if (item.Modify!=null) chart.Frame.SubFrame[i].Frame.ModifyIndex=item.Modify;
5894
- if (item.Change!=null) chart.Frame.SubFrame[i].Frame.ChangeIndex=item.Change;
5895
- if (item.Close!=null) chart.Frame.SubFrame[i].Frame.CloseIndex=item.Close;
5896
- if (item.Overlay!=null) frame.OverlayIndex=item.Overlay;
5897
- if (IFrameSplitOperator.IsBool(item.Export)) frame.ExportData=item.Export;
5898
- if (IFrameSplitOperator.IsBool(item.MaxMin)) chart.Frame.SubFrame[i].Frame.MaxMinWindow=item.MaxMin;
5899
- if (IFrameSplitOperator.IsBool(item.TitleWindow)) chart.Frame.SubFrame[i].Frame.TitleWindow=item.TitleWindow;
5900
- if (IFrameSplitOperator.IsBool(item.IsDrawTitleBG)) chart.Frame.SubFrame[i].Frame.IsDrawTitleBG=item.IsDrawTitleBG;
5901
- if (IFrameSplitOperator.IsBool(item.IsShowNameArrow)) chart.Frame.SubFrame[i].Frame.IsShowNameArrow=item.IsShowNameArrow;
5893
+ chart.SetSubFrameAttribute(chart.Frame.SubFrame[i],item, null)
5894
+ }
5895
+ }
5902
5896
 
5903
- if (IFrameSplitOperator.IsNumber(item.TitleHeight)) chart.Frame.SubFrame[i].Frame.ChartBorder.TitleHeight=item.TitleHeight;
5904
- if (IFrameSplitOperator.IsBool(item.IsShowTitleArrow)) chart.Frame.SubFrame[i].Frame.IsShowTitleArrow=item.IsShowTitleArrow;
5905
- if (item.IsShowIndexName==false) chart.Frame.SubFrame[i].Frame.IsShowIndexName=false;
5906
- if (item.IsShowOverlayIndexName==false) chart.Frame.SubFrame[i].Frame.IsShowOverlayIndexName=false;
5907
- if (IFrameSplitOperator.IsNumber(item.IndexParamSpace)) chart.Frame.SubFrame[i].Frame.IndexParamSpace=item.IndexParamSpace;
5908
- if (IFrameSplitOperator.IsNumber(item.IndexTitleSpace)) chart.Frame.SubFrame[i].Frame.IndexTitleSpace=item.IndexTitleSpace;
5897
+ //叠加指标宽度
5898
+ if (option.OverlayIndexFrameWidth>40) chart.Frame.FixedRightWidth.Overlay=option.OverlayIndexFrameWidth;
5899
+
5900
+ //叠加指标
5901
+ if (IFrameSplitOperator.IsNonEmptyArray(option.OverlayIndex))
5902
+ {
5903
+ for(var i=0;i<option.OverlayIndex.length;++i)
5904
+ {
5905
+ var item=option.OverlayIndex[i];
5906
+ if (item.Windows>=chart.Frame.SubFrame.length) continue;
5907
+
5908
+ var itemString = JSON.stringify(item);
5909
+ var obj = JSON.parse(itemString);
5910
+ if (item.Index) obj.IndexName=item.Index;
5911
+ if (item.Windows>=0) obj.WindowIndex=item.Windows;
5912
+ chart.CreateOverlayWindowsIndex(obj);
5909
5913
  }
5910
5914
  }
5911
5915
 
@@ -38567,6 +38571,7 @@ function ChartKLineTable()
38567
38571
  this.RowNamePosition=1; //0=不显示 1=左边内部 2=左边外部 3=右边外部
38568
38572
  this.BGColor; //背景色
38569
38573
  this.BorderColor; //分割线颜色
38574
+ this.AryBorderColor;//分割线颜色
38570
38575
 
38571
38576
  this.RowCount=5; //行数
38572
38577
  this.RowHeight=10; //行高
@@ -38615,6 +38620,8 @@ function ChartKLineTable()
38615
38620
  }
38616
38621
 
38617
38622
  if (IFrameSplitOperator.IsPlusNumber(option.CellWidth)) this.CellWidth=option.CellWidth;
38623
+
38624
+ if (IFrameSplitOperator.IsNonEmptyArray(option.AryBorderColor)) this.AryBorderColor=option.AryBorderColor.slice();
38618
38625
  }
38619
38626
 
38620
38627
  this.BuildCacheData=function()
@@ -38656,10 +38663,14 @@ function ChartKLineTable()
38656
38663
  var lineCount=30;
38657
38664
  if (this.Style===1 || this.Style===2) lineCount=this.RowCount+1;
38658
38665
 
38659
- this.Canvas.strokeStyle=this.BorderColor;
38660
38666
  var yLine=rtBG.Top;
38661
38667
  for(var i=0;i<lineCount;++i)
38662
38668
  {
38669
+ var borderColor=this.BorderColor;
38670
+ if (this.AryBorderColor && this.AryBorderColor[i])
38671
+ borderColor=this.AryBorderColor[i];
38672
+
38673
+ this.Canvas.strokeStyle=borderColor
38663
38674
  this.Canvas.beginPath();
38664
38675
  this.Canvas.moveTo(rtBG.Left,ToFixedPoint(yLine));
38665
38676
  this.Canvas.lineTo(rtBG.Right,ToFixedPoint(yLine));
@@ -155431,7 +155442,7 @@ function ScrollBarBGChart()
155431
155442
 
155432
155443
 
155433
155444
 
155434
- var HQCHART_VERSION="1.1.15355";
155445
+ var HQCHART_VERSION="1.1.15359";
155435
155446
 
155436
155447
  function PrintHQChartVersion()
155437
155448
  {
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var HQCHART_VERSION="1.1.15355";
8
+ var HQCHART_VERSION="1.1.15359";
9
9
 
10
10
  function PrintHQChartVersion()
11
11
  {
@@ -5934,22 +5934,26 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
5934
5934
 
5935
5935
  }
5936
5936
 
5937
- if (item.Modify!=null) chart.Frame.SubFrame[i].Frame.ModifyIndex=item.Modify;
5938
- if (item.Change!=null) chart.Frame.SubFrame[i].Frame.ChangeIndex=item.Change;
5939
- if (item.Close!=null) chart.Frame.SubFrame[i].Frame.CloseIndex=item.Close;
5940
- if (item.Overlay!=null) frame.OverlayIndex=item.Overlay;
5941
- if (IFrameSplitOperator.IsBool(item.Export)) frame.ExportData=item.Export;
5942
- if (IFrameSplitOperator.IsBool(item.MaxMin)) chart.Frame.SubFrame[i].Frame.MaxMinWindow=item.MaxMin;
5943
- if (IFrameSplitOperator.IsBool(item.TitleWindow)) chart.Frame.SubFrame[i].Frame.TitleWindow=item.TitleWindow;
5944
- if (IFrameSplitOperator.IsBool(item.IsDrawTitleBG)) chart.Frame.SubFrame[i].Frame.IsDrawTitleBG=item.IsDrawTitleBG;
5945
- if (IFrameSplitOperator.IsBool(item.IsShowNameArrow)) chart.Frame.SubFrame[i].Frame.IsShowNameArrow=item.IsShowNameArrow;
5937
+ chart.SetSubFrameAttribute(chart.Frame.SubFrame[i],item, null)
5938
+ }
5939
+ }
5946
5940
 
5947
- if (IFrameSplitOperator.IsNumber(item.TitleHeight)) chart.Frame.SubFrame[i].Frame.ChartBorder.TitleHeight=item.TitleHeight;
5948
- if (IFrameSplitOperator.IsBool(item.IsShowTitleArrow)) chart.Frame.SubFrame[i].Frame.IsShowTitleArrow=item.IsShowTitleArrow;
5949
- if (item.IsShowIndexName==false) chart.Frame.SubFrame[i].Frame.IsShowIndexName=false;
5950
- if (item.IsShowOverlayIndexName==false) chart.Frame.SubFrame[i].Frame.IsShowOverlayIndexName=false;
5951
- if (IFrameSplitOperator.IsNumber(item.IndexParamSpace)) chart.Frame.SubFrame[i].Frame.IndexParamSpace=item.IndexParamSpace;
5952
- if (IFrameSplitOperator.IsNumber(item.IndexTitleSpace)) chart.Frame.SubFrame[i].Frame.IndexTitleSpace=item.IndexTitleSpace;
5941
+ //叠加指标宽度
5942
+ if (option.OverlayIndexFrameWidth>40) chart.Frame.FixedRightWidth.Overlay=option.OverlayIndexFrameWidth;
5943
+
5944
+ //叠加指标
5945
+ if (IFrameSplitOperator.IsNonEmptyArray(option.OverlayIndex))
5946
+ {
5947
+ for(var i=0;i<option.OverlayIndex.length;++i)
5948
+ {
5949
+ var item=option.OverlayIndex[i];
5950
+ if (item.Windows>=chart.Frame.SubFrame.length) continue;
5951
+
5952
+ var itemString = JSON.stringify(item);
5953
+ var obj = JSON.parse(itemString);
5954
+ if (item.Index) obj.IndexName=item.Index;
5955
+ if (item.Windows>=0) obj.WindowIndex=item.Windows;
5956
+ chart.CreateOverlayWindowsIndex(obj);
5953
5957
  }
5954
5958
  }
5955
5959
 
@@ -38611,6 +38615,7 @@ function ChartKLineTable()
38611
38615
  this.RowNamePosition=1; //0=不显示 1=左边内部 2=左边外部 3=右边外部
38612
38616
  this.BGColor; //背景色
38613
38617
  this.BorderColor; //分割线颜色
38618
+ this.AryBorderColor;//分割线颜色
38614
38619
 
38615
38620
  this.RowCount=5; //行数
38616
38621
  this.RowHeight=10; //行高
@@ -38659,6 +38664,8 @@ function ChartKLineTable()
38659
38664
  }
38660
38665
 
38661
38666
  if (IFrameSplitOperator.IsPlusNumber(option.CellWidth)) this.CellWidth=option.CellWidth;
38667
+
38668
+ if (IFrameSplitOperator.IsNonEmptyArray(option.AryBorderColor)) this.AryBorderColor=option.AryBorderColor.slice();
38662
38669
  }
38663
38670
 
38664
38671
  this.BuildCacheData=function()
@@ -38700,10 +38707,14 @@ function ChartKLineTable()
38700
38707
  var lineCount=30;
38701
38708
  if (this.Style===1 || this.Style===2) lineCount=this.RowCount+1;
38702
38709
 
38703
- this.Canvas.strokeStyle=this.BorderColor;
38704
38710
  var yLine=rtBG.Top;
38705
38711
  for(var i=0;i<lineCount;++i)
38706
38712
  {
38713
+ var borderColor=this.BorderColor;
38714
+ if (this.AryBorderColor && this.AryBorderColor[i])
38715
+ borderColor=this.AryBorderColor[i];
38716
+
38717
+ this.Canvas.strokeStyle=borderColor
38707
38718
  this.Canvas.beginPath();
38708
38719
  this.Canvas.moveTo(rtBG.Left,ToFixedPoint(yLine));
38709
38720
  this.Canvas.lineTo(rtBG.Right,ToFixedPoint(yLine));
@@ -167490,7 +167501,7 @@ function HQChartScriptWorker()
167490
167501
 
167491
167502
 
167492
167503
 
167493
- var HQCHART_VERSION="1.1.15355";
167504
+ var HQCHART_VERSION="1.1.15359";
167494
167505
 
167495
167506
  function PrintHQChartVersion()
167496
167507
  {