hqchart 1.1.14455 → 1.1.14457

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.
@@ -7187,7 +7187,7 @@ this.ChartDrawStorage=new ChartDrawStorage();this.ChartDrawStorageCache=null;//
7187
7187
  this.RightSpaceCount=0;//右侧空白个数
7188
7188
  this.SourceDataLimit=new _map2.default();//每个周期缓存数据最大个数 key=周期 value=最大个数
7189
7189
  this.CtrlMoveStep=5;//Ctrl+(Left/Right) 移动数据个数
7190
- this.CustomShow=null;//首先显示的K线的起始日期 { Date:日期, Time:时间, PageSize:, Callback:}
7190
+ this.CustomShow=null;//首先显示的K线的起始日期 { Date:日期, Time:时间, PageSize:, Callback:, Position:0=left 1=center }
7191
7191
  this.ZoomType=0;//缩放模式 0=最右边固定缩放, 1=十字光标两边缩放
7192
7192
  this.IsZoomLockRight=false;this.KLineSize=null;//{ DataWidth:, }
7193
7193
  //this.EnableYDrag={ Left:false, Right:true };
@@ -7266,11 +7266,12 @@ var firstPoint,secondPoint,subFirstPoint,subSecondPoint;for(var i=0;i<hisData.Da
7266
7266
  if(obj.Type==0)//滑块移动
7267
7267
  {hisData.DataOffset=obj.Start.Index;this.CursorIndex=0;this.LastPoint.X=null;this.LastPoint.Y=null;this.ChartOperator_Temp_Update();}else if(obj.Type==1||obj.Type==2)//左,右
7268
7268
  {var startIndex=obj.Start.Index;var showCount=obj.End.Index-obj.Start.Index+1;var start=hisData.Data[obj.Start.Index];var end=hisData.Data[obj.End.Index];//设置X轴显示数据个数
7269
- this.Frame.SetXShowCount(showCount);hisData.DataOffset=obj.Start.Index;this.CursorIndex=0;this.LastPoint.X=null;this.LastPoint.Y=null;this.ChartOperator_Temp_Update();}}else if(id==JSCHART_OPERATOR_ID.OP_GOTO)//{ Date:日期, Time:, PageSize:可选 }
7270
- {if(!IFrameSplitOperator.IsNumber(obj.Date))return;var hisData=this.ChartOperator_Temp_GetHistoryData();if(!hisData)return;//数据还没有到达
7271
- var index=this.ChartOperator_GetIndex_ByDateTime(hisData,obj,this.Period,0);if(index===null){JSConsole.Chart.Log('[KLineChartContainer::ChartOperator] OP_GOTO can\'t find date='+obj.Date+' time='+obj.Time);return;}var oldXPointCount=this.Frame.SubFrame[0].Frame.XPointCount;var xPointCount=oldXPointCount;if(obj.PageSize>0)//调整一屏显示的个数
7269
+ this.Frame.SetXShowCount(showCount);hisData.DataOffset=obj.Start.Index;this.CursorIndex=0;this.LastPoint.X=null;this.LastPoint.Y=null;this.ChartOperator_Temp_Update();}}else if(id==JSCHART_OPERATOR_ID.OP_GOTO)//{ Date:日期, Time:, PageSize:可选, Position:0=left 1=center }
7270
+ {if(!IFrameSplitOperator.IsNumber(obj.Date))return;var hisData=this.ChartOperator_Temp_GetHistoryData();if(!hisData||!IFrameSplitOperator.IsNonEmptyArray(hisData.Data))return;//数据还没有到达
7271
+ var index=this.ChartOperator_GetIndex_ByDateTime(hisData,obj,this.Period,0);if(index===null){JSConsole.Chart.Log('[KLineChartContainer::ChartOperator] OP_GOTO can\'t find date='+obj.Date+' time='+obj.Time);return;}var position=0;if(IFrameSplitOperator.IsNumber(obj.Position))position=obj.Position;var oldXPointCount=this.Frame.SubFrame[0].Frame.XPointCount;var xPointCount=oldXPointCount;if(obj.PageSize>0)//调整一屏显示的个数
7272
7272
  {xPointCount=obj.PageSize;}if(xPointCount!=oldXPointCount){//设置X轴显示数据个数
7273
- this.Frame.SetXShowCount(xPointCount);}hisData.DataOffset=index;this.CursorIndex=0;this.LastPoint.X=null;this.LastPoint.Y=null;this.ChartOperator_Temp_Update();}else if(id==JSCHART_OPERATOR_ID.OP_GOTO_BY_DATAINDEX)//{PageSize:可选, DataIndex:起始位置数据索引}
7273
+ this.Frame.SetXShowCount(xPointCount);}if(position==1)//居中
7274
+ {var moveStep=parseInt(xPointCount/2);index-=moveStep;if(index<0)index=0;}else{}hisData.DataOffset=index;this.CursorIndex=0;this.LastPoint.X=null;this.LastPoint.Y=null;this.ChartOperator_Temp_Update();}else if(id==JSCHART_OPERATOR_ID.OP_GOTO_BY_DATAINDEX)//{PageSize:可选, DataIndex:起始位置数据索引}
7274
7275
  {if(!IFrameSplitOperator.IsNumber(obj.DataIndex))return;var hisData=this.ChartOperator_Temp_GetHistoryData();if(!hisData)return;//数据还没有到达
7275
7276
  if(obj.DataIndex<0||obj.DataIndex>=hisData.Data.length){JSConsole.Chart.Log('[KLineChartContainer::ChartOperator] OP_GOTO_BY_DATAINDEX obj.DataIndex='+obj.DataIndex+' error.}');return;}var oldXPointCount=this.Frame.SubFrame[0].Frame.XPointCount;var xPointCount=oldXPointCount;if(obj.PageSize>0)xPointCount=obj.PageSize;//调整一屏显示的个数
7276
7277
  if(xPointCount!=oldXPointCount)this.Frame.SetXShowCount(xPointCount);//设置X轴显示数据个数
@@ -7354,7 +7355,7 @@ this.TitlePaint[0].Symbol=this.Symbol;this.TitlePaint[0].Name=this.Name;this.Cha
7354
7355
  this.Frame.Data=this.ChartPaint[0].Data;for(var i in this.OverlayChartPaint)//主图股票数据绑定到叠加股票上
7355
7356
  {var item=this.OverlayChartPaint[i];item.MainData=this.ChartPaint[0].Data;}this.ChartCorssCursor.StringFormatY.Symbol=this.Symbol;};this.SetCustomShow=function(customShow,hisData){if(customShow.Callback)//预留给外部回调,可以定制移动
7356
7357
  {customShow.Callback(chart,hisData);return;}var index=this.ChartOperator_GetIndex_ByDateTime(hisData,customShow,this.Period,0);if(index===null){JSConsole.Chart.Log("[KLineChartContainer::SetCustomShow] Can't find index by customShow=",customShow);return;}if(IFrameSplitOperator.IsPlusNumber(customShow.PageSize))//调整一屏显示个数 否则使用默认的
7357
- {var showCount=customShow.PageSize;for(var i=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i].Frame;item.XPointCount=showCount;}}this.ChartPaint[0].Data.DataOffset=index;this.CursorIndex=0;};this.OnDragSelectRectMouseUp=function(e){var paint=this.GetRectSelectPaint();if(!paint)return;var selectData=paint.GetSelectRectData();if(!selectData)return;var pixelTatio=GetDevicePixelRatio();var corssCursor=this.ChartCorssCursor;//十字光标
7358
+ {var showCount=customShow.PageSize;for(var i=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i].Frame;item.XPointCount=showCount;}}if(IFrameSplitOperator.IsNumber(customShow.Position)){var xCount=this.Frame.SubFrame[0].Frame.XPointCount;var moveStep=parseInt(xCount/2);index-=moveStep;if(index<0)index=0;}this.ChartPaint[0].Data.DataOffset=index;this.CursorIndex=0;};this.OnDragSelectRectMouseUp=function(e){var paint=this.GetRectSelectPaint();if(!paint)return;var selectData=paint.GetSelectRectData();if(!selectData)return;var pixelTatio=GetDevicePixelRatio();var corssCursor=this.ChartCorssCursor;//十字光标
7358
7359
  var x=corssCursor.LastPoint.X/pixelTatio;var y=corssCursor.LastPoint.Y/pixelTatio;var isShowMenu=true;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_DRAG_SELECT_RECT_MOUSEUP);if(event){var data={X:x,Y:y,SelectData:selectData,//区间选择的数据
7359
7360
  RectSelectPaint:paint,//区间选择背景
7360
7361
  IsShowMenu:false};event.Callback(event,data,this);isShowMenu=data.IsShowMenu;}if(this.IsShowSelectRectDialog())//区间统计
@@ -7645,7 +7646,7 @@ this.ClearIndexPaint();this.ResetOverlaySymbolStatus();this.ResetScrollBar();thi
7645
7646
  this.AutoUpdateEvent(false,'KLineChartContainer::ChangeRight');//切换复权先停止更新
7646
7647
  this.ClearIndexPaint();this.ResetOverlaySymbolStatus();this.ResetScrollBar();this.Frame.ClearYCoordinateMaxMin();this.UnlockCorssCursor();this.RequestHistoryMinuteData();//请求分钟数据
7647
7648
  }}};//设置第1屏的起始日期
7648
- this.SetFirstShowDate=function(obj){if(!obj||!obj.Date)return;var option={ID:JSCHART_OPERATOR_ID.OP_GOTO,Date:obj.Date};if(IFrameSplitOperator.IsNumber(obj.Time))option.Time=obj.Time;if(IFrameSplitOperator.IsNumber(obj.PageSize))option.PageSize=obj.PageSize;this.ChartOperator(option);};//删除某一个窗口的指标, bCallDestory=是否调用图形销毁函数
7649
+ this.SetFirstShowDate=function(obj){if(!obj||!obj.Date)return;var option={ID:JSCHART_OPERATOR_ID.OP_GOTO,Date:obj.Date,Position:0};if(IFrameSplitOperator.IsNumber(obj.Time))option.Time=obj.Time;if(IFrameSplitOperator.IsNumber(obj.PageSize))option.PageSize=obj.PageSize;if(IFrameSplitOperator.IsNumber(obj.Position))option.Position=obj.Position;this.ChartOperator(option);};//删除某一个窗口的指标, bCallDestory=是否调用图形销毁函数
7649
7650
  this.DeleteIndexPaint=function(windowIndex,bCallDestroy){if(!this.Frame.SubFrame[windowIndex])return;var subFrame=this.Frame.SubFrame[windowIndex].Frame;if(!subFrame)return;var paint=[];//踢出当前窗口的指标画法
7650
7651
  for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];var bFind=item.ChartFrame.Guid==subFrame.Guid||item.ChartFrame==subFrame;if(i==0||!bFind){paint.push(item);}else{if(bCallDestroy===true){if(item&&item.OnDestroy)item.OnDestroy();//图形销毁
7651
7652
  }}}subFrame.YSpecificMaxMin=null;//清空指定最大最小值
@@ -7806,7 +7807,7 @@ this.ClearIndexPaint();//清空指标
7806
7807
  if(option){if(IFrameSplitOperator.IsNonEmptyArray(option.Windows)){var windows=option.Windows;for(var i=0;i<windows.length;++i){if(i>=this.WindowIndex.length)break;//暂时不支持 动态增加/减少
7807
7808
  var item=windows[i];if(!item)continue;if(item.Script){this.WindowIndex[i]=new ScriptIndex(item.Name,item.Script,item.Args,item);//脚本执行
7808
7809
  }else if(item.API){var apiItem=item.API;this.WindowIndex[i]=new APIScriptIndex(apiItem.Name,apiItem.Script,apiItem.Args,item);}else{var indexID=item.Index;var systemScript=new JSIndexScript();var indexInfo=systemScript.Get(indexID);if(indexInfo){JSIndexScript.ModifyAttribute(indexInfo,item);indexInfo.ID=indexID;this.WindowIndex[i]=new ScriptIndex(indexInfo.Name,indexInfo.Script,indexInfo.Args,indexInfo);//脚本执行
7809
- }}}}if(option.CustomShow&&IFrameSplitOperator.IsPlusNumber(option.CustomShow.Date)){var item=option.CustomShow;this.CustomShow={Date:item.Date};if(IFrameSplitOperator.IsNumber(item.Time))this.CustomShow.Time=item.Time;if(IFrameSplitOperator.IsPlusNumber(item.PageSize))this.CustomShow.PageSize=item.PageSize;}}this.ReloadChartDrawPicture();this.Frame.ClearUpDonwFrameYData();if(ChartData.IsDayPeriod(this.Period,true)){this.ClearStockCache();this.RequestHistoryData();//请求日线数据
7810
+ }}}}if(option.CustomShow&&IFrameSplitOperator.IsPlusNumber(option.CustomShow.Date)){var item=option.CustomShow;this.CustomShow={Date:item.Date,Position:0};if(IFrameSplitOperator.IsNumber(item.Time))this.CustomShow.Time=item.Time;if(IFrameSplitOperator.IsPlusNumber(item.PageSize))this.CustomShow.PageSize=item.PageSize;if(IFrameSplitOperator.IsNumber(item.Position))this.CustomShow.Position=item.Position;}}this.ReloadChartDrawPicture();this.Frame.ClearUpDonwFrameYData();if(ChartData.IsDayPeriod(this.Period,true)){this.ClearStockCache();this.RequestHistoryData();//请求日线数据
7810
7811
  //this.ReqeustKLineInfoData();
7811
7812
  }else if(ChartData.IsMinutePeriod(this.Period,true)||ChartData.IsSecondPeriod(this.Period)||ChartData.IsMilliSecondPeriod(this.Period)){this.ClearStockCache();this.RequestHistoryMinuteData();//请求分钟数据
7812
7813
  }else if(ChartData.IsTickPeriod(this.Period)){this.ClearStockCache();this.RequestTickData();}};this.ReqeustKLineInfoData=function(obj){if(obj&&obj.FunctionName=="RecvDragDayData")//增量更新
@@ -14340,7 +14341,7 @@ hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,St
14340
14341
  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);};}/********************************************************************************
14341
14342
  * 版本信息输出
14342
14343
  *
14343
- */var HQCHART_VERSION="1.1.14454";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();//把给外界调用的方法暴露出来
14344
+ */var HQCHART_VERSION="1.1.14456";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();//把给外界调用的方法暴露出来
14344
14345
  exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
14345
14346
  // BaseIndex:BaseIndex,
14346
14347
  // ChartLine:ChartLine,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hqchart",
3
- "version": "1.1.14455",
3
+ "version": "1.1.14457",
4
4
  "description": "HQChart - H5, 微信小程序 沪深/港股/数字货币/期货/美股 K线图(kline),走势图,缩放,拖拽,十字光标,画图工具,截图,筹码图. 分析家语法,通达信语法,(麦语法),第3方数据对接",
5
5
  "main": "lib/main.js",
6
6
  "scripts": {
@@ -75227,7 +75227,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
75227
75227
  this.SourceDataLimit=new Map(); //每个周期缓存数据最大个数 key=周期 value=最大个数
75228
75228
  this.CtrlMoveStep=5; //Ctrl+(Left/Right) 移动数据个数
75229
75229
 
75230
- this.CustomShow=null; //首先显示的K线的起始日期 { Date:日期, Time:时间, PageSize:, Callback:}
75230
+ this.CustomShow=null; //首先显示的K线的起始日期 { Date:日期, Time:时间, PageSize:, Callback:, Position:0=left 1=center }
75231
75231
  this.ZoomType=0; //缩放模式 0=最右边固定缩放, 1=十字光标两边缩放
75232
75232
  this.IsZoomLockRight=false;
75233
75233
  this.KLineSize=null; //{ DataWidth:, }
@@ -75815,12 +75815,12 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
75815
75815
  this.ChartOperator_Temp_Update();
75816
75816
  }
75817
75817
  }
75818
- else if (id==JSCHART_OPERATOR_ID.OP_GOTO) //{ Date:日期, Time:, PageSize:可选 }
75818
+ else if (id==JSCHART_OPERATOR_ID.OP_GOTO) //{ Date:日期, Time:, PageSize:可选, Position:0=left 1=center }
75819
75819
  {
75820
75820
  if (!IFrameSplitOperator.IsNumber(obj.Date)) return;
75821
75821
 
75822
75822
  var hisData=this.ChartOperator_Temp_GetHistoryData();
75823
- if (!hisData) return; //数据还没有到达
75823
+ if (!hisData || !IFrameSplitOperator.IsNonEmptyArray(hisData.Data)) return; //数据还没有到达
75824
75824
 
75825
75825
  var index=this.ChartOperator_GetIndex_ByDateTime(hisData, obj, this.Period, 0);
75826
75826
 
@@ -75830,6 +75830,8 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
75830
75830
  return;
75831
75831
  }
75832
75832
 
75833
+ var position=0;
75834
+ if (IFrameSplitOperator.IsNumber(obj.Position)) position=obj.Position;
75833
75835
  var oldXPointCount=this.Frame.SubFrame[0].Frame.XPointCount;
75834
75836
  var xPointCount=oldXPointCount;
75835
75837
  if (obj.PageSize>0) //调整一屏显示的个数
@@ -75843,6 +75845,17 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
75843
75845
  this.Frame.SetXShowCount(xPointCount);
75844
75846
  }
75845
75847
 
75848
+ if (position==1) //居中
75849
+ {
75850
+ var moveStep=parseInt(xPointCount/2);
75851
+ index-=moveStep;
75852
+ if (index<0) index=0;
75853
+ }
75854
+ else
75855
+ {
75856
+
75857
+ }
75858
+
75846
75859
  hisData.DataOffset=index;
75847
75860
  this.CursorIndex=0;
75848
75861
  this.LastPoint.X=null;
@@ -76748,6 +76761,15 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
76748
76761
  item.XPointCount=showCount;
76749
76762
  }
76750
76763
  }
76764
+
76765
+ if (IFrameSplitOperator.IsNumber(customShow.Position))
76766
+ {
76767
+ var xCount=this.Frame.SubFrame[0].Frame.XPointCount;
76768
+ var moveStep=parseInt(xCount/2);
76769
+ index-=moveStep;
76770
+ if (index<0) index=0;
76771
+ }
76772
+
76751
76773
 
76752
76774
  this.ChartPaint[0].Data.DataOffset=index;
76753
76775
  this.CursorIndex=0;
@@ -78773,9 +78795,10 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
78773
78795
  {
78774
78796
  if (!obj || !obj.Date) return;
78775
78797
 
78776
- var option={ ID:JSCHART_OPERATOR_ID.OP_GOTO, Date:obj.Date };
78798
+ var option={ ID:JSCHART_OPERATOR_ID.OP_GOTO, Date:obj.Date, Position:0 };
78777
78799
  if (IFrameSplitOperator.IsNumber(obj.Time)) option.Time=obj.Time;
78778
78800
  if (IFrameSplitOperator.IsNumber(obj.PageSize)) option.PageSize=obj.PageSize;
78801
+ if (IFrameSplitOperator.IsNumber(obj.Position)) option.Position=obj.Position;
78779
78802
 
78780
78803
  this.ChartOperator(option);
78781
78804
  }
@@ -80173,9 +80196,10 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
80173
80196
  if (option.CustomShow && IFrameSplitOperator.IsPlusNumber(option.CustomShow.Date))
80174
80197
  {
80175
80198
  var item=option.CustomShow;
80176
- this.CustomShow={ Date:item.Date };
80199
+ this.CustomShow={ Date:item.Date, Position:0 };
80177
80200
  if (IFrameSplitOperator.IsNumber(item.Time)) this.CustomShow.Time=item.Time;
80178
80201
  if (IFrameSplitOperator.IsPlusNumber(item.PageSize)) this.CustomShow.PageSize=item.PageSize;
80202
+ if (IFrameSplitOperator.IsNumber(item.Position)) this.CustomShow.Position=item.Position;
80179
80203
  }
80180
80204
  }
80181
80205
 
@@ -79152,7 +79152,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
79152
79152
  this.SourceDataLimit=new Map(); //每个周期缓存数据最大个数 key=周期 value=最大个数
79153
79153
  this.CtrlMoveStep=5; //Ctrl+(Left/Right) 移动数据个数
79154
79154
 
79155
- this.CustomShow=null; //首先显示的K线的起始日期 { Date:日期, Time:时间, PageSize:, Callback:}
79155
+ this.CustomShow=null; //首先显示的K线的起始日期 { Date:日期, Time:时间, PageSize:, Callback:, Position:0=left 1=center }
79156
79156
  this.ZoomType=0; //缩放模式 0=最右边固定缩放, 1=十字光标两边缩放
79157
79157
  this.IsZoomLockRight=false;
79158
79158
  this.KLineSize=null; //{ DataWidth:, }
@@ -79740,12 +79740,12 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
79740
79740
  this.ChartOperator_Temp_Update();
79741
79741
  }
79742
79742
  }
79743
- else if (id==JSCHART_OPERATOR_ID.OP_GOTO) //{ Date:日期, Time:, PageSize:可选 }
79743
+ else if (id==JSCHART_OPERATOR_ID.OP_GOTO) //{ Date:日期, Time:, PageSize:可选, Position:0=left 1=center }
79744
79744
  {
79745
79745
  if (!IFrameSplitOperator.IsNumber(obj.Date)) return;
79746
79746
 
79747
79747
  var hisData=this.ChartOperator_Temp_GetHistoryData();
79748
- if (!hisData) return; //数据还没有到达
79748
+ if (!hisData || !IFrameSplitOperator.IsNonEmptyArray(hisData.Data)) return; //数据还没有到达
79749
79749
 
79750
79750
  var index=this.ChartOperator_GetIndex_ByDateTime(hisData, obj, this.Period, 0);
79751
79751
 
@@ -79755,6 +79755,8 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
79755
79755
  return;
79756
79756
  }
79757
79757
 
79758
+ var position=0;
79759
+ if (IFrameSplitOperator.IsNumber(obj.Position)) position=obj.Position;
79758
79760
  var oldXPointCount=this.Frame.SubFrame[0].Frame.XPointCount;
79759
79761
  var xPointCount=oldXPointCount;
79760
79762
  if (obj.PageSize>0) //调整一屏显示的个数
@@ -79768,6 +79770,17 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
79768
79770
  this.Frame.SetXShowCount(xPointCount);
79769
79771
  }
79770
79772
 
79773
+ if (position==1) //居中
79774
+ {
79775
+ var moveStep=parseInt(xPointCount/2);
79776
+ index-=moveStep;
79777
+ if (index<0) index=0;
79778
+ }
79779
+ else
79780
+ {
79781
+
79782
+ }
79783
+
79771
79784
  hisData.DataOffset=index;
79772
79785
  this.CursorIndex=0;
79773
79786
  this.LastPoint.X=null;
@@ -80673,6 +80686,15 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
80673
80686
  item.XPointCount=showCount;
80674
80687
  }
80675
80688
  }
80689
+
80690
+ if (IFrameSplitOperator.IsNumber(customShow.Position))
80691
+ {
80692
+ var xCount=this.Frame.SubFrame[0].Frame.XPointCount;
80693
+ var moveStep=parseInt(xCount/2);
80694
+ index-=moveStep;
80695
+ if (index<0) index=0;
80696
+ }
80697
+
80676
80698
 
80677
80699
  this.ChartPaint[0].Data.DataOffset=index;
80678
80700
  this.CursorIndex=0;
@@ -82698,9 +82720,10 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
82698
82720
  {
82699
82721
  if (!obj || !obj.Date) return;
82700
82722
 
82701
- var option={ ID:JSCHART_OPERATOR_ID.OP_GOTO, Date:obj.Date };
82723
+ var option={ ID:JSCHART_OPERATOR_ID.OP_GOTO, Date:obj.Date, Position:0 };
82702
82724
  if (IFrameSplitOperator.IsNumber(obj.Time)) option.Time=obj.Time;
82703
82725
  if (IFrameSplitOperator.IsNumber(obj.PageSize)) option.PageSize=obj.PageSize;
82726
+ if (IFrameSplitOperator.IsNumber(obj.Position)) option.Position=obj.Position;
82704
82727
 
82705
82728
  this.ChartOperator(option);
82706
82729
  }
@@ -84098,9 +84121,10 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
84098
84121
  if (option.CustomShow && IFrameSplitOperator.IsPlusNumber(option.CustomShow.Date))
84099
84122
  {
84100
84123
  var item=option.CustomShow;
84101
- this.CustomShow={ Date:item.Date };
84124
+ this.CustomShow={ Date:item.Date, Position:0 };
84102
84125
  if (IFrameSplitOperator.IsNumber(item.Time)) this.CustomShow.Time=item.Time;
84103
84126
  if (IFrameSplitOperator.IsPlusNumber(item.PageSize)) this.CustomShow.PageSize=item.PageSize;
84127
+ if (IFrameSplitOperator.IsNumber(item.Position)) this.CustomShow.Position=item.Position;
84104
84128
  }
84105
84129
  }
84106
84130
 
@@ -143573,7 +143597,7 @@ function ScrollBarBGChart()
143573
143597
 
143574
143598
 
143575
143599
 
143576
- var HQCHART_VERSION="1.1.14454";
143600
+ var HQCHART_VERSION="1.1.14456";
143577
143601
 
143578
143602
  function PrintHQChartVersion()
143579
143603
  {
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var HQCHART_VERSION="1.1.14454";
8
+ var HQCHART_VERSION="1.1.14456";
9
9
 
10
10
  function PrintHQChartVersion()
11
11
  {
@@ -79196,7 +79196,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
79196
79196
  this.SourceDataLimit=new Map(); //每个周期缓存数据最大个数 key=周期 value=最大个数
79197
79197
  this.CtrlMoveStep=5; //Ctrl+(Left/Right) 移动数据个数
79198
79198
 
79199
- this.CustomShow=null; //首先显示的K线的起始日期 { Date:日期, Time:时间, PageSize:, Callback:}
79199
+ this.CustomShow=null; //首先显示的K线的起始日期 { Date:日期, Time:时间, PageSize:, Callback:, Position:0=left 1=center }
79200
79200
  this.ZoomType=0; //缩放模式 0=最右边固定缩放, 1=十字光标两边缩放
79201
79201
  this.IsZoomLockRight=false;
79202
79202
  this.KLineSize=null; //{ DataWidth:, }
@@ -79784,12 +79784,12 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
79784
79784
  this.ChartOperator_Temp_Update();
79785
79785
  }
79786
79786
  }
79787
- else if (id==JSCHART_OPERATOR_ID.OP_GOTO) //{ Date:日期, Time:, PageSize:可选 }
79787
+ else if (id==JSCHART_OPERATOR_ID.OP_GOTO) //{ Date:日期, Time:, PageSize:可选, Position:0=left 1=center }
79788
79788
  {
79789
79789
  if (!IFrameSplitOperator.IsNumber(obj.Date)) return;
79790
79790
 
79791
79791
  var hisData=this.ChartOperator_Temp_GetHistoryData();
79792
- if (!hisData) return; //数据还没有到达
79792
+ if (!hisData || !IFrameSplitOperator.IsNonEmptyArray(hisData.Data)) return; //数据还没有到达
79793
79793
 
79794
79794
  var index=this.ChartOperator_GetIndex_ByDateTime(hisData, obj, this.Period, 0);
79795
79795
 
@@ -79799,6 +79799,8 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
79799
79799
  return;
79800
79800
  }
79801
79801
 
79802
+ var position=0;
79803
+ if (IFrameSplitOperator.IsNumber(obj.Position)) position=obj.Position;
79802
79804
  var oldXPointCount=this.Frame.SubFrame[0].Frame.XPointCount;
79803
79805
  var xPointCount=oldXPointCount;
79804
79806
  if (obj.PageSize>0) //调整一屏显示的个数
@@ -79812,6 +79814,17 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
79812
79814
  this.Frame.SetXShowCount(xPointCount);
79813
79815
  }
79814
79816
 
79817
+ if (position==1) //居中
79818
+ {
79819
+ var moveStep=parseInt(xPointCount/2);
79820
+ index-=moveStep;
79821
+ if (index<0) index=0;
79822
+ }
79823
+ else
79824
+ {
79825
+
79826
+ }
79827
+
79815
79828
  hisData.DataOffset=index;
79816
79829
  this.CursorIndex=0;
79817
79830
  this.LastPoint.X=null;
@@ -80717,6 +80730,15 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
80717
80730
  item.XPointCount=showCount;
80718
80731
  }
80719
80732
  }
80733
+
80734
+ if (IFrameSplitOperator.IsNumber(customShow.Position))
80735
+ {
80736
+ var xCount=this.Frame.SubFrame[0].Frame.XPointCount;
80737
+ var moveStep=parseInt(xCount/2);
80738
+ index-=moveStep;
80739
+ if (index<0) index=0;
80740
+ }
80741
+
80720
80742
 
80721
80743
  this.ChartPaint[0].Data.DataOffset=index;
80722
80744
  this.CursorIndex=0;
@@ -82742,9 +82764,10 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
82742
82764
  {
82743
82765
  if (!obj || !obj.Date) return;
82744
82766
 
82745
- var option={ ID:JSCHART_OPERATOR_ID.OP_GOTO, Date:obj.Date };
82767
+ var option={ ID:JSCHART_OPERATOR_ID.OP_GOTO, Date:obj.Date, Position:0 };
82746
82768
  if (IFrameSplitOperator.IsNumber(obj.Time)) option.Time=obj.Time;
82747
82769
  if (IFrameSplitOperator.IsNumber(obj.PageSize)) option.PageSize=obj.PageSize;
82770
+ if (IFrameSplitOperator.IsNumber(obj.Position)) option.Position=obj.Position;
82748
82771
 
82749
82772
  this.ChartOperator(option);
82750
82773
  }
@@ -84142,9 +84165,10 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
84142
84165
  if (option.CustomShow && IFrameSplitOperator.IsPlusNumber(option.CustomShow.Date))
84143
84166
  {
84144
84167
  var item=option.CustomShow;
84145
- this.CustomShow={ Date:item.Date };
84168
+ this.CustomShow={ Date:item.Date, Position:0 };
84146
84169
  if (IFrameSplitOperator.IsNumber(item.Time)) this.CustomShow.Time=item.Time;
84147
84170
  if (IFrameSplitOperator.IsPlusNumber(item.PageSize)) this.CustomShow.PageSize=item.PageSize;
84171
+ if (IFrameSplitOperator.IsNumber(item.Position)) this.CustomShow.Position=item.Position;
84148
84172
  }
84149
84173
  }
84150
84174
 
@@ -153385,7 +153409,7 @@ function HQChartScriptWorker()
153385
153409
 
153386
153410
 
153387
153411
 
153388
- var HQCHART_VERSION="1.1.14454";
153412
+ var HQCHART_VERSION="1.1.14456";
153389
153413
 
153390
153414
  function PrintHQChartVersion()
153391
153415
  {