hqchart 1.1.13466 → 1.1.13468

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.
@@ -1173,7 +1173,7 @@ if(option.IsCorssOnlyDrawKLine===true)chart.ChartCorssCursor.IsOnlyDrawKLine=opt
1173
1173
  if(IFrameSplitOperator.IsBool(item.IsOnlyDrawKLine))chart.ChartCorssCursor.IsOnlyDrawKLine=item.IsOnlyDrawKLine;//Y轴显示收盘价
1174
1174
  if(option.CorssCursorInfo.PressTime)chart.PressTime=option.CorssCursorInfo.PressTime;//长按显示十字光标的时间
1175
1175
  if(IFrameSplitOperator.IsNumber(option.CorssCursorInfo.HPenType))chart.ChartCorssCursor.HPenType=option.CorssCursorInfo.HPenType;if(option.CorssCursorInfo.VPenType>0)chart.ChartCorssCursor.VPenType=option.CorssCursorInfo.VPenType;if(IFrameSplitOperator.IsNumber(item.VLineType))chart.ChartCorssCursor.VLineType=item.VLineType;if(option.CorssCursorInfo.DateFormatType>0)chart.ChartCorssCursor.StringFormatX.DateFormatType=option.CorssCursorInfo.DateFormatType;if(IFrameSplitOperator.IsBool(item.IsDrawXRangeBG))chart.ChartCorssCursor.IsDrawXRangeBG=item.IsDrawXRangeBG;if(IFrameSplitOperator.IsBool(option.CorssCursorInfo.IsFixXLastTime))chart.ChartCorssCursor.IsFixXLastTime=option.CorssCursorInfo.IsFixXLastTime;if(IFrameSplitOperator.IsNumber(item.TextHeight))chart.ChartCorssCursor.TextHeight=item.TextHeight;if(item.RightButton){if(IFrameSplitOperator.IsBool(item.RightButton.Enable))chart.ChartCorssCursor.RightButton.Enable=item.RightButton.Enable;}if(IFrameSplitOperator.IsNumber(item.PriceFormatType))chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;if(IFrameSplitOperator.IsNumber(item.DataFormatType))chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;}//保存十字光标文字高度
1176
- option.CorssCursor={};option.CorssCursor.TitleHeight=chart.ChartCorssCursor.TextHeight;if(IFrameSplitOperator.IsNumber(option.SplashTitlePosition)){if(chart.ChartSplashPaint)chart.ChartSplashPaint.Position=option.SplashTitlePosition;}if(option.Frame){for(var i=0;i<option.Frame.length;++i){var item=option.Frame[i];if(!chart.Frame.SubFrame[i])continue;var subFrame=chart.Frame.SubFrame[i].Frame;if(IFrameSplitOperator.IsNumber(item.SplitCount))chart.Frame.SubFrame[i].Frame.YSplitOperator.SplitCount=item.SplitCount;if(item.StringFormat)chart.Frame.SubFrame[i].Frame.YSplitOperator.StringFormat=item.StringFormat;if(IFrameSplitOperator.IsNumber(item.FloatPrecision))chart.Frame.SubFrame[i].Frame.YSplitOperator.FloatPrecision=item.FloatPrecision;if(item.Custom)chart.Frame.SubFrame[i].Frame.YSplitOperator.Custom=item.Custom;if(IFrameSplitOperator.IsNumber(item.SplitType)){chart.Frame.SubFrame[i].Frame.YSplitOperator.SplitType=item.SplitType;chart.Frame.SubFrame[i].Frame.YSplitOperator.DefaultSplitType=item.SplitType;}if(!isNaN(item.Height))chart.Frame.SubFrame[i].Height=item.Height;if(item.IsShowLeftText===false||item.IsShowLeftText===true){chart.Frame.SubFrame[i].Frame.IsShowYText[0]=item.IsShowLeftText;chart.Frame.SubFrame[i].Frame.YSplitOperator.IsShowLeftText=item.IsShowLeftText;//显示左边刻度
1176
+ option.CorssCursor={};option.CorssCursor.TitleHeight=chart.ChartCorssCursor.TextHeight;if(IFrameSplitOperator.IsNumber(option.SplashTitlePosition)){if(chart.ChartSplashPaint)chart.ChartSplashPaint.Position=option.SplashTitlePosition;}if(option.Frame){for(var i=0;i<option.Frame.length;++i){var item=option.Frame[i];if(!chart.Frame.SubFrame[i])continue;var subFrame=chart.Frame.SubFrame[i].Frame;if(IFrameSplitOperator.IsNumber(item.SplitCount))chart.Frame.SubFrame[i].Frame.YSplitOperator.SplitCount=item.SplitCount;if(item.StringFormat)chart.Frame.SubFrame[i].Frame.YSplitOperator.StringFormat=item.StringFormat;if(IFrameSplitOperator.IsNumber(item.FloatPrecision))chart.Frame.SubFrame[i].Frame.YSplitOperator.FloatPrecision=item.FloatPrecision;if(item.Custom)chart.Frame.SubFrame[i].Frame.YSplitOperator.Custom=item.Custom;if(IFrameSplitOperator.IsNumber(item.SplitType)){chart.Frame.SubFrame[i].Frame.YSplitOperator.SplitType=item.SplitType;chart.Frame.SubFrame[i].Frame.YSplitOperator.DefaultSplitType=item.SplitType;}if(IFrameSplitOperator.IsNumber(item.FilterType))subFrame.YSplitOperator.FilterType=item.FilterType;if(!isNaN(item.Height))chart.Frame.SubFrame[i].Height=item.Height;if(item.IsShowLeftText===false||item.IsShowLeftText===true){chart.Frame.SubFrame[i].Frame.IsShowYText[0]=item.IsShowLeftText;chart.Frame.SubFrame[i].Frame.YSplitOperator.IsShowLeftText=item.IsShowLeftText;//显示左边刻度
1177
1177
  }if(item.IsShowRightText===false||item.IsShowRightText===true){chart.Frame.SubFrame[i].Frame.IsShowYText[1]=item.IsShowRightText;chart.Frame.SubFrame[i].Frame.YSplitOperator.IsShowRightText=item.IsShowRightText;//显示右边刻度
1178
1178
  }if(item.TopSpace>=0)chart.Frame.SubFrame[i].Frame.ChartBorder.TopSpace=item.TopSpace*pixelRatio;if(item.BottomSpace>=0)chart.Frame.SubFrame[i].Frame.ChartBorder.BottomSpace=item.BottomSpace*pixelRatio;if(item.RightTextPosition>0)chart.Frame.SubFrame[i].Frame.YTextPosition[1]=item.RightTextPosition;if(item.LeftTextPosition>0)chart.Frame.SubFrame[i].Frame.YTextPosition[0]=item.LeftTextPosition;if(item.IsShowXLine==false)chart.Frame.SubFrame[i].Frame.IsShowXLine=item.IsShowXLine;if(item.IsShowYLine==false)chart.Frame.SubFrame[i].Frame.IsShowYLine=item.IsShowYLine;if(IFrameSplitOperator.IsNumber(item.YTextBaseline))chart.Frame.SubFrame[i].Frame.YTextBaseline=item.YTextBaseline;if(item.YCoordinateType>0)chart.Frame.SubFrame[0].Frame.YSplitOperator.CoordinateType=item.YCoordinateType;if(item.IsYReverse==true)chart.Frame.SubFrame[0].Frame.CoordinateType=1;//反转坐标
1179
1179
  if(IFrameSplitOperator.IsNumber(item.PercentageTextFormat))subFrame.YSplitOperator.PercentageTextFormat=item.PercentageTextFormat;//百分比坐标格式
@@ -1212,7 +1212,7 @@ if(option.SelectedChart){var item=option.SelectedChart;if(IFrameSplitOperator.Is
1212
1212
  }}//分页
1213
1213
  if(option.PageInfo)chart.SetPageInfo(option.PageInfo);chart.Create(windowsCount,option);//创建子窗口
1214
1214
  if(option.CorssCursorInfo){var item=option.CorssCursorInfo;if(!isNaN(option.CorssCursorInfo.Left))chart.ChartCorssCursor.ShowTextMode.Left=option.CorssCursorInfo.Left;if(!isNaN(option.CorssCursorInfo.Right))chart.ChartCorssCursor.ShowTextMode.Right=option.CorssCursorInfo.Right;if(!isNaN(option.CorssCursorInfo.Bottom))chart.ChartCorssCursor.ShowTextMode.Bottom=option.CorssCursorInfo.Bottom;if(option.CorssCursorInfo.IsShowCorss===false)chart.ChartCorssCursor.IsShowCorss=option.CorssCursorInfo.IsShowCorss;if(option.CorssCursorInfo.RightTextFormat>0)chart.ChartCorssCursor.TextFormat.Right=option.CorssCursorInfo.RightTextFormat;if(option.CorssCursorInfo.IsOnlyDrawMinute==true)chart.ChartCorssCursor.IsOnlyDrawMinute=option.CorssCursorInfo.IsOnlyDrawMinute;//Y轴显示收盘价
1215
- if(IFrameSplitOperator.IsBool(option.CorssCursorInfo.IsFixXLastTime))chart.ChartCorssCursor.IsFixXLastTime=option.CorssCursorInfo.IsFixXLastTime;if(item.RightButton){if(IFrameSplitOperator.IsBool(item.RightButton.Enable))chart.ChartCorssCursor.RightButton.Enable=item.RightButton.Enable;}if(IFrameSplitOperator.IsNumber(item.PriceFormatType))chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;if(IFrameSplitOperator.IsNumber(item.DataFormatType))chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;if(IFrameSplitOperator.IsNumber(item.HPenType))chart.ChartCorssCursor.HPenType=item.HPenType;if(IFrameSplitOperator.IsNumber(item.VPenType))chart.ChartCorssCursor.VPenType=item.VPenType;}if(option.MinuteInfo)chart.CreateMinuteInfo(option.MinuteInfo);if(IFrameSplitOperator.IsBool(option.IsShowRightMenu))chart.IsShowRightMenu=option.IsShowRightMenu;if(IFrameSplitOperator.IsNumber(option.DayCount))chart.DayCount=option.DayCount;this.SetChartBorder(chart,option);if(option.SplashTitle)chart.ChartSplashPaint.SplashTitle=option.SplashTitle;if(IFrameSplitOperator.IsBool(option.EnableBorderDrag)){chart.EnableBorderDrag=option.EnableBorderDrag;}this.AdjustChartBorder(chart);if(option.Frame){for(var i=0;i<option.Frame.length;++i){var item=option.Frame[i];if(!chart.Frame.SubFrame[i])continue;var subFrame=chart.Frame.SubFrame[i].Frame;if(IFrameSplitOperator.IsNumber(item.SplitCount))chart.Frame.SubFrame[i].Frame.YSplitOperator.SplitCount=item.SplitCount;if(item.StringFormat)chart.Frame.SubFrame[i].Frame.YSplitOperator.StringFormat=item.StringFormat;if(IFrameSplitOperator.IsNumber(item.SplitType)){chart.Frame.SubFrame[i].Frame.YSplitOperator.SplitType=item.SplitType;chart.Frame.SubFrame[i].Frame.YSplitOperator.DefaultSplitType=item.SplitType;}if(item.IsShowLeftText==false){chart.Frame.SubFrame[i].Frame.IsShowYText[0]=item.IsShowLeftText;chart.Frame.SubFrame[i].Frame.YSplitOperator.IsShowLeftText=item.IsShowLeftText;//显示左边刻度
1215
+ if(IFrameSplitOperator.IsBool(option.CorssCursorInfo.IsFixXLastTime))chart.ChartCorssCursor.IsFixXLastTime=option.CorssCursorInfo.IsFixXLastTime;if(item.RightButton){if(IFrameSplitOperator.IsBool(item.RightButton.Enable))chart.ChartCorssCursor.RightButton.Enable=item.RightButton.Enable;}if(IFrameSplitOperator.IsNumber(item.PriceFormatType))chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;if(IFrameSplitOperator.IsNumber(item.DataFormatType))chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;if(IFrameSplitOperator.IsNumber(item.HPenType))chart.ChartCorssCursor.HPenType=item.HPenType;if(IFrameSplitOperator.IsNumber(item.VPenType))chart.ChartCorssCursor.VPenType=item.VPenType;}if(option.MinuteInfo)chart.CreateMinuteInfo(option.MinuteInfo);if(IFrameSplitOperator.IsBool(option.IsShowRightMenu))chart.IsShowRightMenu=option.IsShowRightMenu;if(IFrameSplitOperator.IsNumber(option.DayCount))chart.DayCount=option.DayCount;this.SetChartBorder(chart,option);if(option.SplashTitle)chart.ChartSplashPaint.SplashTitle=option.SplashTitle;if(IFrameSplitOperator.IsBool(option.EnableBorderDrag)){chart.EnableBorderDrag=option.EnableBorderDrag;}this.AdjustChartBorder(chart);if(option.Frame){for(var i=0;i<option.Frame.length;++i){var item=option.Frame[i];if(!chart.Frame.SubFrame[i])continue;var subFrame=chart.Frame.SubFrame[i].Frame;if(IFrameSplitOperator.IsNumber(item.SplitCount))chart.Frame.SubFrame[i].Frame.YSplitOperator.SplitCount=item.SplitCount;if(item.StringFormat)chart.Frame.SubFrame[i].Frame.YSplitOperator.StringFormat=item.StringFormat;if(IFrameSplitOperator.IsNumber(item.SplitType)){chart.Frame.SubFrame[i].Frame.YSplitOperator.SplitType=item.SplitType;chart.Frame.SubFrame[i].Frame.YSplitOperator.DefaultSplitType=item.SplitType;}if(IFrameSplitOperator.IsNumber(item.FilterType))subFrame.YSplitOperator.FilterType=item.FilterType;if(item.IsShowLeftText==false){chart.Frame.SubFrame[i].Frame.IsShowYText[0]=item.IsShowLeftText;chart.Frame.SubFrame[i].Frame.YSplitOperator.IsShowLeftText=item.IsShowLeftText;//显示左边刻度
1216
1216
  }if(item.IsShowRightText==false){chart.Frame.SubFrame[i].Frame.IsShowYText[1]=item.IsShowRightText;chart.Frame.SubFrame[i].Frame.YSplitOperator.IsShowRightText=item.IsShowRightText;//显示右边刻度
1217
1217
  }if(item.Height>=0)chart.Frame.SubFrame[i].Height=item.Height;if(item.Custom)chart.Frame.SubFrame[i].Frame.YSplitOperator.Custom=item.Custom;if(item.RightTextFormat>0)chart.Frame.SubFrame[i].Frame.YSplitOperator.RightTextFormat=item.RightTextFormat;if(IFrameSplitOperator.IsNumber(item.TitleHeight))chart.Frame.SubFrame[i].Frame.ChartBorder.TitleHeight=item.TitleHeight;if(IFrameSplitOperator.IsNumber(item.BorderLine))chart.Frame.SubFrame[i].Frame.BorderLine=item.BorderLine;if(IFrameSplitOperator.IsBool(item.EnableRemoveZero))chart.Frame.SubFrame[i].Frame.YSplitOperator.EnableRemoveZero=item.EnableRemoveZero;if(IFrameSplitOperator.IsNumber(item.FloatPrecision))chart.Frame.SubFrame[i].Frame.YSplitOperator.FloatPrecision=item.FloatPrecision;if(IFrameSplitOperator.IsBool(item.IsShowXLine))chart.Frame.SubFrame[i].Frame.IsShowXLine=item.IsShowXLine;if(IFrameSplitOperator.IsBool(item.IsShowYLine))chart.Frame.SubFrame[i].Frame.IsShowYLine=item.IsShowYLine;if(IFrameSplitOperator.IsNumber(item.YTextBaseline))chart.Frame.SubFrame[i].Frame.YTextBaseline=item.YTextBaseline;if(IFrameSplitOperator.IsBool(item.IsShowIndexTitle))chart.Frame.SubFrame[i].Frame.IsShowIndexTitle=item.IsShowIndexTitle;if(item.TopSpace>=0)chart.Frame.SubFrame[i].Frame.ChartBorder.TopSpace=item.TopSpace*pixelRatio;if(item.BottomSpace>=0)chart.Frame.SubFrame[i].Frame.ChartBorder.BottomSpace=item.BottomSpace*pixelRatio;//是否显示关闭集合竞价按钮
1218
1218
  if(IFrameSplitOperator.IsNumber(item.CloseBeforeButton))chart.Frame.SubFrame[i].Frame.IsShowCloseButton=item.CloseBeforeButton;if(item.ClientBGColor)subFrame.ClientBGColor=item.ClientBGColor;}chart.UpdateXShowText();}if(option.ExtendChart){for(var i=0;i<option.ExtendChart.length;++i){var item=option.ExtendChart[i];chart.CreateExtendChart(item.Name,item);}}//叠加股票
@@ -1222,7 +1222,7 @@ if(IFrameSplitOperator.IsNonEmptyArray(option.Windows)){var scriptData=new JSInd
1222
1222
  }else if(item.API)//使用API挂接指标数据 API:{ Name:指标名字, Script:指标脚本可以为空, Args:参数可以为空, Url:指标执行地址 }
1223
1223
  {var apiItem=item.API;chart.WindowIndex[index]=new APIScriptIndex(apiItem.Name,apiItem.Script,apiItem.Args,item);}else{var indexItem=JSIndexMap.Get(item.Index);if(indexItem){chart.WindowIndex[index]=indexItem.Create();//创建子窗口的指标
1224
1224
  chart.CreateWindowIndex(index);}else{var indexInfo=scriptData.Get(item.Index);if(!indexInfo)continue;indexInfo.ID=item.Index;var args=indexInfo.Args;if(item.Args)args=item.Args;if(item.IsShortTitle)indexInfo.IsShortTitle=item.IsShortTitle;if(item.TitleFont)indexInfo.TitleFont=item.TitleFont;if(IFrameSplitOperator.IsBool(item.IsSync))indexInfo.IsSync=item.IsSync;chart.WindowIndex[index]=new ScriptIndex(indexInfo.Name,indexInfo.Script,args,indexInfo);//脚本执行
1225
- if(item.StringFormat>0)chart.WindowIndex[index].StringFormat=item.StringFormat;if(item.FloatPrecision>=0)chart.WindowIndex[index].FloatPrecision=item.FloatPrecision;}}var frame=chart.Frame.SubFrame[index].Frame;if(IFrameSplitOperator.IsBool(item.Modify))frame.ModifyIndex=item.Modify;if(IFrameSplitOperator.IsBool(item.Change))frame.ChangeIndex=item.Change;if(IFrameSplitOperator.IsBool(item.Close))frame.CloseIndex=item.Close;if(IFrameSplitOperator.IsBool(item.Overlay))frame.OverlayIndex=item.Overlay;if(IFrameSplitOperator.IsBool(item.Export))frame.ExportData=item.Export;if(IFrameSplitOperator.IsBool(item.MaxMin))frame.MaxMinWindow=item.MaxMin;if(IFrameSplitOperator.IsBool(item.TitleWindow))frame.TitleWindow=item.TitleWindow;if(IFrameSplitOperator.IsNumber(item.YSplitType))chart.Frame.SubFrame[index].Frame.YSplitOperator.SplitType=item.YSplitType;if(!isNaN(item.TitleHeight))chart.Frame.SubFrame[index].Frame.ChartBorder.TitleHeight=item.TitleHeight;if(IFrameSplitOperator.IsBool(item.IsDrawTitleBG))chart.Frame.SubFrame[index].Frame.IsDrawTitleBG=item.IsDrawTitleBG;if(IFrameSplitOperator.IsBool(item.IsShowNameArrow))chart.Frame.SubFrame[index].Frame.IsShowNameArrow=item.IsShowNameArrow;if(IFrameSplitOperator.IsBool(item.IsShowTitleArrow))chart.Frame.SubFrame[index].Frame.IsShowTitleArrow=item.IsShowTitleArrow;if(item.IsShowIndexName==false)chart.Frame.SubFrame[index].Frame.IsShowIndexName=false;if(item.IsShowOverlayIndexName==false)chart.Frame.SubFrame[index].Frame.IsShowOverlayIndexName=false;if(!IFrameSplitOperator.IsUndefined(item.HorizontalReserved))frame.HorizontalReserved=item.HorizontalReserved;}}this.AdjustTitleHeight(chart);//叠加指标
1225
+ if(item.StringFormat>0)chart.WindowIndex[index].StringFormat=item.StringFormat;if(item.FloatPrecision>=0)chart.WindowIndex[index].FloatPrecision=item.FloatPrecision;}}var frame=chart.Frame.SubFrame[index].Frame;if(IFrameSplitOperator.IsBool(item.Modify))frame.ModifyIndex=item.Modify;if(IFrameSplitOperator.IsBool(item.Change))frame.ChangeIndex=item.Change;if(IFrameSplitOperator.IsBool(item.Close))frame.CloseIndex=item.Close;if(IFrameSplitOperator.IsBool(item.Overlay))frame.OverlayIndex=item.Overlay;if(IFrameSplitOperator.IsBool(item.Export))frame.ExportData=item.Export;if(IFrameSplitOperator.IsBool(item.MaxMin))frame.MaxMinWindow=item.MaxMin;if(IFrameSplitOperator.IsBool(item.TitleWindow))frame.TitleWindow=item.TitleWindow;if(IFrameSplitOperator.IsNumber(item.YSplitType))chart.Frame.SubFrame[index].Frame.YSplitOperator.SplitType=item.YSplitType;if(IFrameSplitOperator.IsNumber(item.FilterType))chart.Frame.SubFrame[index].Frame.YSplitOperator.FilterType=item.FilterType;if(!isNaN(item.TitleHeight))chart.Frame.SubFrame[index].Frame.ChartBorder.TitleHeight=item.TitleHeight;if(IFrameSplitOperator.IsBool(item.IsDrawTitleBG))chart.Frame.SubFrame[index].Frame.IsDrawTitleBG=item.IsDrawTitleBG;if(IFrameSplitOperator.IsBool(item.IsShowNameArrow))chart.Frame.SubFrame[index].Frame.IsShowNameArrow=item.IsShowNameArrow;if(IFrameSplitOperator.IsBool(item.IsShowTitleArrow))chart.Frame.SubFrame[index].Frame.IsShowTitleArrow=item.IsShowTitleArrow;if(item.IsShowIndexName==false)chart.Frame.SubFrame[index].Frame.IsShowIndexName=false;if(item.IsShowOverlayIndexName==false)chart.Frame.SubFrame[index].Frame.IsShowOverlayIndexName=false;if(!IFrameSplitOperator.IsUndefined(item.HorizontalReserved))frame.HorizontalReserved=item.HorizontalReserved;}}this.AdjustTitleHeight(chart);//叠加指标
1226
1226
  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);}}return chart;};this.CreateMinMinuteChartContainer=function(option){var chart=null;if(option.Type==="迷你分钟走势图横屏")chart=new MinuteChartHScreenContainer(this.CanvasElement);else chart=new MinuteChartContainer(this.CanvasElement);if(option.NetworkFilter)chart.NetworkFilter=option.NetworkFilter;var windowsCount=2;if(option.BeforeOpen)//集合竞价
1227
1227
  {var item=option.BeforeOpen;if(IFrameSplitOperator.IsBool(item.IsShow))chart.IsShowBeforeData=item.IsShow;if(IFrameSplitOperator.IsNumber(item.Width))chart.ExtendWidth.Left=item.Width;if(IFrameSplitOperator.IsBool(item.IsShowMultiDay))chart.IsShowMultiDayBeforeData=item.IsShowMultiDay;if(IFrameSplitOperator.IsNumber(item.MulitiDayWidth))chart.MultiDayExtendWidth.Left=item.MulitiDayWidth;}if(option.AfterClose)//收盘集合竞价
1228
1228
  {var item=option.AfterClose;if(IFrameSplitOperator.IsBool(item.IsShow))chart.IsShowAfterData=item.IsShow;if(IFrameSplitOperator.IsNumber(item.ShareVol))chart.ShareAfterVol=item.ShareVol;if(IFrameSplitOperator.IsNumber(item.Width))chart.ExtendWidth.Right=item.Width;if(IFrameSplitOperator.IsBool(item.IsShowMultiDay))chart.IsShowMultiDayAfterData=item.IsShowMultiDay;if(IFrameSplitOperator.IsNumber(item.MulitiDayWidth))chart.MultiDayExtendWidth.Right=item.MulitiDayWidth;}if(!option.Listener)option.Listener={KeyDown:false,Wheel:false};chart.Create(windowsCount,option.Listener);//创建子窗口
@@ -4847,9 +4847,9 @@ this.GetKLineChartCallback;//获取K线图形
4847
4847
  this.IntegerCoordinateSplit=function(data){var splitItem=this.FrameSplitData.Find(data.Interval);if(!splitItem)return false;if(data.Interval==splitItem.FixInterval)return true;var fixMax=data.Max,fixMin=data.Min;var maxValue=data.Max/splitItem.FixInterval;var minValue=data.Min/splitItem.FixInterval;//调整到整数倍数,不能整除的 +1
4848
4848
  if(IFrameSplitOperator.IsFloat(maxValue))fixMax=parseInt((maxValue+0.5).toFixed(0))*splitItem.FixInterval;if(IFrameSplitOperator.IsFloat(minValue))fixMin=parseInt((minValue-0.5).toFixed(0))*splitItem.FixInterval;if(data.Min==0)fixMin=0;//最小值是0 不用调整了.
4849
4849
  if(fixMin<0&&data.Min>0)fixMin=0;//都是正数的, 最小值最小调整为0
4850
- var count=0;for(var i=fixMin;i-fixMax<0.00000001;i+=splitItem.FixInterval){++count;}data.Interval=splitItem.FixInterval;data.Max=fixMax;data.Min=fixMin;data.Count=count;return true;};this.Filter=function(aryInfo,keepZero){if(this.SplitCount<=0||aryInfo.length<=0||aryInfo.length<=this.SplitCount)return aryInfo;//分割线比预设的多, 过掉一些
4851
- var filter=parseInt(aryInfo.length/this.SplitCount);if(filter<=1)filter=2;var data=[];for(var i=0;i<aryInfo.length;i+=filter){if(i+filter>=aryInfo.length&&i!=aryInfo.length-1)//最后一个数据放进去
4852
- {data.push(aryInfo[aryInfo.length-1]);}else{data.push(aryInfo[i]);}}if(this.SplitCount==2&&data.length>2)//之显示第1个和最后一个刻度
4850
+ var count=0;for(var i=fixMin;i-fixMax<0.00000001;i+=splitItem.FixInterval){++count;}data.Interval=splitItem.FixInterval;data.Max=fixMax;data.Min=fixMin;data.Count=count;return true;};this.Filter=function(aryInfo,keepZero,filterType){if(this.SplitCount<=0||aryInfo.length<=0||aryInfo.length<=this.SplitCount)return aryInfo;//分割线比预设的多, 过掉一些
4851
+ var filter=parseInt(aryInfo.length/this.SplitCount);if(filter<=1)filter=2;var data=[];if(filterType==1){for(var i=0;i<aryInfo.length;i+=filter){data.push(aryInfo[i]);}}else{for(var i=0;i<aryInfo.length;i+=filter){if(i+filter>=aryInfo.length&&i!=aryInfo.length-1)//最后一个数据放进去
4852
+ {data.push(aryInfo[aryInfo.length-1]);}else{data.push(aryInfo[i]);}}}if(this.SplitCount==2&&data.length>2)//之显示第1个和最后一个刻度
4853
4853
  {for(var i=1;i<data.length-1;++i){var item=data[i];item.Message[0]=null;item.Message[1]=null;}}if(keepZero)//如果不存在0轴,增加一个0轴,刻度信息部显示
4854
4854
  {var bExsitZero=false;for(var i=0;i<data.length;++i){var item=data[i];if(Math.abs(item.Value)<0.00000001){bExsitZero=true;break;}}if(bExsitZero==false){var zeroCoordinate=new CoordinateInfo();zeroCoordinate.Value=0;zeroCoordinate.Message[0]=null;zeroCoordinate.Message[1]=null;data.push(zeroCoordinate);}}return data;};this.RemoveZero=function(aryInfo)//移除小数后面多余的0
4855
4855
  {//所有的数字小数点后面都0,才会去掉
@@ -5030,6 +5030,7 @@ var count=0;for(var i=fixMin;i-fixMax<0.00000001;i+=splitItem.FixInterval){++cou
5030
5030
  this.newMethod();delete this.newMethod;this.SplitCount=3;//刻度个数
5031
5031
  this.FloatPrecision=2;//坐标小数位数(默认2)
5032
5032
  this.FLOATPRECISION_RANGE=[1,0.1,0.01,0.001,0.0001];this.SplitType=0;//0=自动分割 1=固定分割 2=堆积图(0-100)
5033
+ this.FilterType=0;//自动分割过滤算法
5033
5034
  this.DefaultSplitType=0;this.Custom=[];//[{Type:0}]; 定制刻度
5034
5035
  this.DefaultYMaxMin;//{ Max:null, Min:null }; //指定最大,最小, Y轴范围必须比最大值大, 比最小值小
5035
5036
  this.EnableRemoveZero=g_JSChartResource.Frame.EnableRemoveZero;this.LineType=null;//线段样式
@@ -5045,7 +5046,7 @@ this.IsEnableDragY=function(){return true;};this.Reset=function()//重置
5045
5046
  coordinate.Message[1]=IFrameSplitOperator.FormatValueString(value,floatPrecision,this.LanguageID);}coordinate.Message[0]=coordinate.Message[1];if(this.IsShowLeftText==false)this.Frame.HorizontalInfo[i].Message[0]=null;if(this.IsShowRightText==false)this.Frame.HorizontalInfo[i].Message[1]=null;this.Frame.HorizontalInfo.push(coordinate);}}else{for(var i=0,value=splitData.Min;i<splitData.Count;++i,value+=splitData.Interval){var coordinate=new CoordinateInfo();this.Frame.HorizontalInfo[i]=coordinate;coordinate.Value=value;if(IFrameSplitOperator.IsNumber(this.LineType))coordinate.LineType=this.LineType;var text=this.FormatValueString(value);this.Frame.HorizontalInfo[i].Message[0]=this.Frame.HorizontalInfo[i].Message[1]=text;if(this.IsShowLeftText==false)this.Frame.HorizontalInfo[i].Message[0]=null;if(this.IsShowRightText==false)this.Frame.HorizontalInfo[i].Message[1]=null;//this.Frame.HorizontalInfo[i].Font="14px 微软雅黑";
5046
5047
  //this.Frame.HorizontalInfo[i].TextColor="rgb(100,0,200)";
5047
5048
  //this.Frame.HorizontalInfo[i].LineColor="rgb(220,220,220)";
5048
- }}this.FilterIgnoreYValue();this.CustomCoordinate();if(this.SplitType!=1)this.Frame.HorizontalInfo=this.Filter(this.Frame.HorizontalInfo,splitData.Max>0&&splitData.Min<0);this.RightFrameSplitY();this.MainOverlayFrameSplitY();//主图Y轴绑定叠加Y轴坐标
5049
+ }}this.FilterIgnoreYValue();this.CustomCoordinate();if(this.SplitType!=1)this.Frame.HorizontalInfo=this.Filter(this.Frame.HorizontalInfo,splitData.Max>0&&splitData.Min<0,this.FilterType);this.RightFrameSplitY();this.MainOverlayFrameSplitY();//主图Y轴绑定叠加Y轴坐标
5049
5050
  this.CallAcutionSplitY(this.SplitCount,splitData);if(this.EnableRemoveZero)this.RemoveZero(this.Frame.HorizontalInfo);this.DynamicMessageText();this.Frame.HorizontalMax=splitData.Max;this.Frame.HorizontalMin=splitData.Min;if(this.EnableZoomUpDown==true&&!this.FixedYMaxMin)this.FixedYMaxMin={Max:splitData.Max,Min:splitData.Min};this.ReservedHeight(splitData);//预留高度
5050
5051
  if(this.GetEventCallback){var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_SPLIT_YCOORDINATE);if(event&&event.Callback){var data={ID:this.Frame.Identify,Frame:this.Frame};if(this.OverlayIdentify)data.OverlayIdentify=this.OverlayIdentify;event.Callback(event,data,this);}}};this.FormatValueString=function(value){var text;if(this.StringFormat==1)//手机端格式 如果有万,亿单位了 去掉小数
5051
5052
  {var floatPrecision=this.FloatPrecision;if(IFrameSplitOperator.IsNumber(value)&&Math.abs(value)>1000)floatPrecision=0;text=IFrameSplitOperator.FormatValueString(value,floatPrecision,this.LanguageID);}else if(this.StringFormat==2)//原始数据输出
@@ -5623,6 +5624,7 @@ this.StringFormat=STRING_FORMAT_TYPE.DEFAULT;//字符串格式
5623
5624
  this.FloatPrecision=2;//小数位数
5624
5625
  this.IsShow=true;//是否显示
5625
5626
  this.Callback;//绘制标题回调
5627
+ this.ExtendData;//扩展数据
5626
5628
  }function DynamicChartTitlePainting(){this.newMethod=IChartTitlePainting;//派生
5627
5629
  this.newMethod();delete this.newMethod;this.ClassName='DynamicChartTitlePainting';this.IsDynamic=true;this.Data=[];this.Explain;this.ColorIndex;//五彩K线名字 {Name:'名字'}
5628
5630
  this.IsShowColorIndexTitle=true;this.IsShowUpDownArrow=true;//指标数据是否显示 上涨下跌箭头
@@ -5673,7 +5675,8 @@ var value=null;var preVaildItem=null;if(item.DataType=="StraightLine")//直线
5673
5675
  }else{var index=Math.abs(this.CursorIndex);index=parseInt(index.toFixed(0));if(this.IsKLineFrame)index=this.CursorIndex;var dataIndex=item.Data.DataOffset+index;if(dataIndex>=item.Data.Data.length)dataIndex=item.Data.Data.length-1;if(dataIndex<0)return null;}if(item.DataType=="ChartMultiLine")//多线段数据
5674
5676
  {aryText=this.ForamtMultiLineTitle(dataIndex,item);if(!aryText)return null;return{Text:null,ArrayText:aryText};}else if(item.DataType=="ChartMultiPoint"){aryText=this.ForamtMultiPointTitle(dataIndex,item);if(!aryText)return null;return{Text:null,ArrayText:aryText};}value=item.Data.Data[dataIndex];if(value==null&&item.ChartClassName=="ChartStepLine")//当前值无效,上一个值延续
5675
5677
  {preVaildItem=this.GetPreVaildItem(item.Data.Data,dataIndex);if(!preVaildItem)return null;preText=this.FormatValue(preVaildItem.Item,item);if(item.Name){var dyValue=this.GetDynamicOutValue(item.Name,preText);if(dyValue)preText=dyValue;}valueText='--('+preText+')';return{Text:valueText,ArrayText:aryText};}if(value==null)return null;if(item.DataType=="HistoryData-Vol"){value=value.Vol;valueText=this.FormatValue(value,item);}else if(item.DataType=="MultiReport"){valueText=this.FormatMultiReport(value,item);}else if(item.DataType=="MULTI_POINT_LINE"){valueText=this.FromatMultiDataLine(value,item);if(!valueText)return null;}else if(item.DataType=="ChartStackedBar"){aryText=this.FromatStackedBarTitle(value,item);if(!aryText)return null;return{Text:null,ArrayText:aryText};}else if(g_ScriptIndexChartFactory.Has(item.DataType))//外部挂接
5676
- {var find=g_ScriptIndexChartFactory.Get(item.DataType);if(find&&find.FormatTitleCallback)return find.FormatTitleCallback(value,item,dataIndex);}else{if(this.GetEventCallback){var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_INDEX_OUT_TEXT);if(event){var data={Item:item,Index:titleIndex,Data:this.Data,FrameID:this.Frame.Identify,DataIndex:dataIndex,Value:value,Out:null};event.Callback(event,data,this);if(data.Out)return data.Out;}}var arrowSuper=null;//独立颜色
5678
+ {var find=g_ScriptIndexChartFactory.Get(item.DataType);if(find&&find.FormatTitleCallback)return find.FormatTitleCallback(value,item,dataIndex);}else{if(this.GetEventCallback){var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_INDEX_OUT_TEXT);if(event){var data={Item:item,Index:titleIndex,Data:this.Data,FrameID:this.Frame.Identify,DataIndex:dataIndex,Value:value,Out:null};event.Callback(event,data,this);if(data.Out)return data.Out;}}if(item.DataType=="ChartBand")//默认不输出
5679
+ return null;var arrowSuper=null;//独立颜色
5677
5680
  if(this.IsShowUpDownArrow){var preValue=null;if(dataIndex-1>=0)preValue=item.Data.Data[dataIndex-1];if(IFrameSplitOperator.IsNumber(preValue)){if(preValue>value)arrowSuper={Text:'↓',TextColor:this.UpDownArrowConfig.DownColor};else if(preValue<value)arrowSuper={Text:'↑',TextColor:this.UpDownArrowConfig.UpColor};else arrowSuper={Text:'→',TextColor:this.UpDownArrowConfig.UnchangeColor};}}valueText=this.FormatValue(value,item);if(item.Name){var dyValue=this.GetDynamicOutValue(item.Name,valueText);if(dyValue)valueText=dyValue;}if(arrowSuper){var outItem={Name:null,Text:valueText,Color:item.Color,TextEx:[arrowSuper]};if(item.Name){var text=item.Name;var dyTitle=this.GetDynamicOutName(item.Name);//动态标题
5678
5681
  if(dyTitle)text=dyTitle;outItem.Name=text;}//outItem.BG='rgb(100,100,100)';
5679
5682
  aryText=[outItem];valueText=null;}}}return{Text:valueText,ArrayText:aryText};};//绘制主图指标 rtText 返回画完以后的区域
@@ -11443,7 +11446,7 @@ if(varItem.Draw.FixedPosition==="TOP")chartText.FixedPosition=1;else if(varItem.
11443
11446
  this.SetChartIndexName(chartText);hqChart.ChartPaint.push(chartText);};//COLORSTICK
11444
11447
  this.CreateMACD=function(hqChart,windowIndex,varItem,id){var chartMACD=new ChartMACD();chartMACD.Canvas=hqChart.Canvas;chartMACD.Identify=this.Guid;chartMACD.Name=varItem.Name;chartMACD.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chartMACD.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(!isNaN(width)&&width>0)chartMACD.LineWidth=width;}var titleIndex=windowIndex+1;chartMACD.Data.Data=varItem.Data;var clrTitle=this.GetDefaultColor(id);if(varItem.Color)clrTitle=this.GetColor(varItem.Color);if(varItem.UpColor)chartMACD.UpColor=varItem.UpColor;if(varItem.DownColor)chartMACD.DownColor=varItem.DownColor;this.ReloadChartResource(hqChart,windowIndex,chartMACD);hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(chartMACD.Data,varItem.Name,clrTitle);this.SetChartIndexName(chartMACD);hqChart.ChartPaint.push(chartMACD);};this.CreatePointDot=function(hqChart,windowIndex,varItem,id,hisData){var pointDot=new ChartPointDot();pointDot.Canvas=hqChart.Canvas;pointDot.Name=varItem.Name;pointDot.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;pointDot.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;if(varItem.Color)pointDot.Color=this.GetColor(varItem.Color);else pointDot.Color=this.GetDefaultColor(id);if(varItem.Radius)pointDot.Radius=varItem.Radius;if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(!isNaN(width)&&width>0)pointDot.Radius=width;}if(IFrameSplitOperator.IsBool(varItem.UpDownDot)){pointDot.EnableUpDownColor=varItem.UpDownDot;pointDot.HistoryData=hisData;}var titleIndex=windowIndex+1;pointDot.Data.Data=varItem.Data;hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(pointDot.Data,varItem.Name,pointDot.Color);this.SetChartIndexName(pointDot);hqChart.ChartPaint.push(pointDot);};this.CreateStick=function(hqChart,windowIndex,varItem,id){var chart=new ChartStick();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(id);if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(!isNaN(width)&&width>0)chart.LineWidth=width;}var titleIndex=windowIndex+1;chart.Data.Data=varItem.Data;this.ReloadChartResource(hqChart,windowIndex,chart);hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);};this.CreateLineStick=function(hqChart,windowIndex,varItem,id){var chart=new ChartLineStick();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(id);if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(!isNaN(width)&&width>0)chart.LineWidth=width;}var titleIndex=windowIndex+1;chart.Data.Data=varItem.Data;hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);hqChart.ChartPaint.push(chart);};this.CreateStraightLine=function(hqChart,windowIndex,varItem,id){var line=new ChartLine();line.DrawType=1;line.Canvas=hqChart.Canvas;line.Name=varItem.Name;line.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;line.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;if(varItem.Color)line.Color=this.GetColor(varItem.Color);else line.Color=this.GetDefaultColor(id);if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(!isNaN(width)&&width>0)line.LineWidth=width;}var titleIndex=windowIndex+1;line.Data.Data=varItem.Draw.DrawData;if(varItem.Name=="DRAWLINE")hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(line.Data,null,line.Color);//hqChart.TitlePaint[titleIndex].Data[id]=new DynamicTitleData(line.Data,varItem.Name,line.Color);
11445
11448
  hqChart.ChartPaint.push(line);};this.CreateVolStick=function(hqChart,windowIndex,varItem,id,hisData){var chart=new ChartVolStick();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.KLineDrawType=hqChart.KLineDrawType;//设置K线显示类型
11446
- chart.Identify=this.Guid;if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(id);if(varItem.UpColor)chart.UpColor=varItem.UpColor;if(varItem.DownColor)chart.DownColor=varItem.DownColor;if(IFrameSplitOperator.IsNumber(varItem.StickType))chart.BarType=varItem.StickType;if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(IFrameSplitOperator.IsPlusNumber(width))chart.BarWidth=width;}var titleIndex=windowIndex+1;chart.Data.Data=varItem.Data;chart.HistoryData=hisData;this.ReloadChartResource(hqChart,windowIndex,chart);var titleData=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);hqChart.TitlePaint[titleIndex].Data[id]=titleData;this.SetTitleData(titleData,chart);this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);};this.CreateBand=function(hqChart,windowIndex,varItem,id){var chart=new ChartBand();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.FirstColor=varItem.Draw.Color[0];chart.SecondColor=varItem.Draw.Color[1];chart.Data.Data=varItem.Draw.DrawData;if(IFrameSplitOperator.IsBool(varItem.IsFirstDraw))chart.IsDrawFirst=varItem.IsFirstDraw;this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);};this.CreateFillRGN=function(hqChart,windowIndex,varItem,id){var chart=new ChartLineArea();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data.Data=varItem.Draw.DrawData;if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(id);hqChart.ChartPaint.push(chart);};this.CreateFillRGN2=function(hqChart,windowIndex,varItem,id){var chart=new ChartFillRGN();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data.Data=varItem.Draw.DrawData;hqChart.ChartPaint.push(chart);};this.CreateFillBGRGN=function(hqChart,windowIndex,varItem,id){var chart=new ChartFillBGRGN();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data.Data=varItem.Draw.DrawData;hqChart.ChartPaint.push(chart);};this.CreateFLOATRGN=function(hqChart,windowIndex,varItem,id){var chart=new ChartFLOATRGN();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data.Data=varItem.Draw.DrawData;hqChart.ChartPaint.push(chart);};//创建K线图
11449
+ chart.Identify=this.Guid;if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(id);if(varItem.UpColor)chart.UpColor=varItem.UpColor;if(varItem.DownColor)chart.DownColor=varItem.DownColor;if(IFrameSplitOperator.IsNumber(varItem.StickType))chart.BarType=varItem.StickType;if(varItem.LineWidth){var width=parseInt(varItem.LineWidth.replace("LINETHICK",""));if(IFrameSplitOperator.IsPlusNumber(width))chart.BarWidth=width;}var titleIndex=windowIndex+1;chart.Data.Data=varItem.Data;chart.HistoryData=hisData;this.ReloadChartResource(hqChart,windowIndex,chart);var titleData=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);hqChart.TitlePaint[titleIndex].Data[id]=titleData;this.SetTitleData(titleData,chart);this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);};this.CreateBand=function(hqChart,windowIndex,varItem,id){var chart=new ChartBand();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.FirstColor=varItem.Draw.Color[0];chart.SecondColor=varItem.Draw.Color[1];chart.Data.Data=varItem.Draw.DrawData;if(IFrameSplitOperator.IsBool(varItem.IsFirstDraw))chart.IsDrawFirst=varItem.IsFirstDraw;var titleIndex=windowIndex+1;var titleData=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);titleData.DataType=chart.ClassName;titleData.ExtendData={Color:[chart.FirstColor,chart.SecondColor]};hqChart.TitlePaint[titleIndex].Data[id]=titleData;this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);};this.CreateFillRGN=function(hqChart,windowIndex,varItem,id){var chart=new ChartLineArea();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data.Data=varItem.Draw.DrawData;if(varItem.Color)chart.Color=this.GetColor(varItem.Color);else chart.Color=this.GetDefaultColor(id);hqChart.ChartPaint.push(chart);};this.CreateFillRGN2=function(hqChart,windowIndex,varItem,id){var chart=new ChartFillRGN();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data.Data=varItem.Draw.DrawData;hqChart.ChartPaint.push(chart);};this.CreateFillBGRGN=function(hqChart,windowIndex,varItem,id){var chart=new ChartFillBGRGN();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data.Data=varItem.Draw.DrawData;hqChart.ChartPaint.push(chart);};this.CreateFLOATRGN=function(hqChart,windowIndex,varItem,id){var chart=new ChartFLOATRGN();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data.Data=varItem.Draw.DrawData;hqChart.ChartPaint.push(chart);};//创建K线图
11447
11450
  this.CreateKLine=function(hqChart,windowIndex,varItem,id){var chart=new ChartKLine();chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.Identify=this.Guid;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;chart.Data.Data=varItem.Draw.DrawData;chart.IsShowMaxMinPrice=false;chart.IsShowKTooltip=false;if(IFrameSplitOperator.IsNumber(varItem.KLineType))chart.DrawType=varItem.KLineType;if(varItem.Color)//如果设置了颜色,使用外面设置的颜色
11448
11451
  chart.UnchagneColor=chart.DownColor=chart.UpColor=this.GetColor(varItem.Color);this.SetChartIndexName(chart);hqChart.ChartPaint.push(chart);};this.CreateOverlayKLine=function(hqChart,windowIndex,varItem,id){var chart=null;if(hqChart.IsKLineContainer())chart=new ChartOverlayKLine();else if(hqChart.IsMinuteContainer())chart=new ChartOverlayMinutePriceLine();else return;chart.Canvas=hqChart.Canvas;chart.Name=varItem.Name;chart.Identify=this.Guid;chart.ChartBorder=hqChart.Frame.SubFrame[windowIndex].Frame.ChartBorder;chart.ChartFrame=hqChart.Frame.SubFrame[windowIndex].Frame;if(varItem.Color)chart.Color=this.GetColor(varItem.Color);//如果设置了颜色,使用外面设置的颜色
11449
11452
  else chart.Color=this.GetDefaultColor(id);chart.Data.Data=varItem.Draw.DrawData;chart.MainData=hqChart.ChartPaint[0].Data;//绑定K线
@@ -13203,7 +13206,7 @@ hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,St
13203
13206
  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);};}/********************************************************************************
13204
13207
  * 版本信息输出
13205
13208
  *
13206
- */var HQCHART_VERSION="1.1.13465";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();//把给外界调用的方法暴露出来
13209
+ */var HQCHART_VERSION="1.1.13467";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();//把给外界调用的方法暴露出来
13207
13210
  exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
13208
13211
  // BaseIndex:BaseIndex,
13209
13212
  // ChartLine:ChartLine,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hqchart",
3
- "version": "1.1.13466",
3
+ "version": "1.1.13468",
4
4
  "description": "HQChart - H5, 微信小程序 沪深/港股/数字货币/期货/美股 K线图(kline),走势图,缩放,拖拽,十字光标,画图工具,截图,筹码图. 分析家语法,通达信语法,(麦语法),第3方数据对接",
5
5
  "main": "lib/main.js",
6
6
  "scripts": {
@@ -20812,6 +20812,12 @@ function ScriptIndex(name,script,args,option)
20812
20812
 
20813
20813
  if (IFrameSplitOperator.IsBool(varItem.IsFirstDraw)) chart.IsDrawFirst=varItem.IsFirstDraw;
20814
20814
 
20815
+ var titleIndex=windowIndex+1;
20816
+ var titleData=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);
20817
+ titleData.DataType=chart.ClassName;
20818
+ titleData.ExtendData={ Color:[chart.FirstColor, chart.SecondColor] };
20819
+ hqChart.TitlePaint[titleIndex].Data[id]=titleData;
20820
+
20815
20821
  this.SetChartIndexName(chart);
20816
20822
  hqChart.ChartPaint.push(chart);
20817
20823
  }
@@ -528,6 +528,8 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
528
528
  chart.Frame.SubFrame[i].Frame.YSplitOperator.SplitType=item.SplitType;
529
529
  chart.Frame.SubFrame[i].Frame.YSplitOperator.DefaultSplitType=item.SplitType;
530
530
  }
531
+ if (IFrameSplitOperator.IsNumber(item.FilterType)) subFrame.YSplitOperator.FilterType=item.FilterType;
532
+
531
533
  if (!isNaN(item.Height)) chart.Frame.SubFrame[i].Height = item.Height;
532
534
  if (item.IsShowLeftText===false || item.IsShowLeftText===true)
533
535
  {
@@ -1006,6 +1008,8 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
1006
1008
  chart.Frame.SubFrame[i].Frame.YSplitOperator.SplitType=item.SplitType;
1007
1009
  chart.Frame.SubFrame[i].Frame.YSplitOperator.DefaultSplitType=item.SplitType;
1008
1010
  }
1011
+ if (IFrameSplitOperator.IsNumber(item.FilterType)) subFrame.YSplitOperator.FilterType=item.FilterType;
1012
+
1009
1013
  if (item.IsShowLeftText==false)
1010
1014
  {
1011
1015
  chart.Frame.SubFrame[i].Frame.IsShowYText[0]=item.IsShowLeftText;
@@ -1151,6 +1155,7 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
1151
1155
  if (IFrameSplitOperator.IsBool(item.TitleWindow)) frame.TitleWindow=item.TitleWindow;
1152
1156
 
1153
1157
  if (IFrameSplitOperator.IsNumber(item.YSplitType)) chart.Frame.SubFrame[index].Frame.YSplitOperator.SplitType=item.YSplitType;
1158
+ if (IFrameSplitOperator.IsNumber(item.FilterType)) chart.Frame.SubFrame[index].Frame.YSplitOperator.FilterType=item.FilterType;
1154
1159
  if (!isNaN(item.TitleHeight)) chart.Frame.SubFrame[index].Frame.ChartBorder.TitleHeight=item.TitleHeight;
1155
1160
  if (IFrameSplitOperator.IsBool(item.IsDrawTitleBG)) chart.Frame.SubFrame[index].Frame.IsDrawTitleBG=item.IsDrawTitleBG;
1156
1161
  if (IFrameSplitOperator.IsBool(item.IsShowNameArrow)) chart.Frame.SubFrame[index].Frame.IsShowNameArrow=item.IsShowNameArrow;
@@ -45594,7 +45599,7 @@ function IFrameSplitOperator()
45594
45599
  return true;
45595
45600
  }
45596
45601
 
45597
- this.Filter = function (aryInfo,keepZero)
45602
+ this.Filter=function(aryInfo, keepZero, filterType)
45598
45603
  {
45599
45604
  if (this.SplitCount <= 0 || aryInfo.length <= 0 || aryInfo.length <= this.SplitCount) return aryInfo;
45600
45605
 
@@ -45602,17 +45607,28 @@ function IFrameSplitOperator()
45602
45607
  var filter = parseInt(aryInfo.length / this.SplitCount);
45603
45608
  if (filter <= 1) filter = 2;
45604
45609
  var data = [];
45605
- for (var i = 0; i < aryInfo.length; i += filter)
45610
+ if (filterType==1)
45606
45611
  {
45607
- if (i + filter >= aryInfo.length && i != aryInfo.length - 1) //最后一个数据放进去
45612
+ for (var i = 0; i < aryInfo.length; i += filter)
45608
45613
  {
45609
- data.push(aryInfo[aryInfo.length - 1]);
45614
+ data.push(aryInfo[i]);
45610
45615
  }
45611
- else
45616
+ }
45617
+ else
45618
+ {
45619
+ for (var i = 0; i < aryInfo.length; i += filter)
45612
45620
  {
45613
- data.push(aryInfo[i]);
45621
+ if (i + filter >= aryInfo.length && i != aryInfo.length - 1) //最后一个数据放进去
45622
+ {
45623
+ data.push(aryInfo[aryInfo.length - 1]);
45624
+ }
45625
+ else
45626
+ {
45627
+ data.push(aryInfo[i]);
45628
+ }
45614
45629
  }
45615
45630
  }
45631
+
45616
45632
 
45617
45633
  if (this.SplitCount == 2 && data.length>2) //之显示第1个和最后一个刻度
45618
45634
  {
@@ -45650,7 +45666,7 @@ function IFrameSplitOperator()
45650
45666
  return data;
45651
45667
  }
45652
45668
 
45653
- this.RemoveZero = function (aryInfo) //移除小数后面多余的0
45669
+ this.RemoveZero=function(aryInfo) //移除小数后面多余的0
45654
45670
  {
45655
45671
  //所有的数字小数点后面都0,才会去掉
45656
45672
  var isAllZero = [true, true, true, true];
@@ -47218,6 +47234,7 @@ function FrameSplitY()
47218
47234
  this.FloatPrecision = 2; //坐标小数位数(默认2)
47219
47235
  this.FLOATPRECISION_RANGE=[1,0.1,0.01,0.001,0.0001];
47220
47236
  this.SplitType=0; //0=自动分割 1=固定分割 2=堆积图(0-100)
47237
+ this.FilterType=0; //自动分割过滤算法
47221
47238
  this.DefaultSplitType=0;
47222
47239
  this.Custom=[]; //[{Type:0}]; 定制刻度
47223
47240
  this.DefaultYMaxMin; //{ Max:null, Min:null }; //指定最大,最小, Y轴范围必须比最大值大, 比最小值小
@@ -47409,7 +47426,8 @@ function FrameSplitY()
47409
47426
  this.FilterIgnoreYValue();
47410
47427
 
47411
47428
  this.CustomCoordinate();
47412
- if (this.SplitType!=1) this.Frame.HorizontalInfo = this.Filter(this.Frame.HorizontalInfo,(splitData.Max>0 && splitData.Min<0));
47429
+ if (this.SplitType!=1)
47430
+ this.Frame.HorizontalInfo = this.Filter(this.Frame.HorizontalInfo,(splitData.Max>0 && splitData.Min<0), this.FilterType);
47413
47431
 
47414
47432
  this.RightFrameSplitY();
47415
47433
  this.MainOverlayFrameSplitY(); //主图Y轴绑定叠加Y轴坐标
@@ -53089,6 +53107,7 @@ function DynamicTitleData(data,name,color)
53089
53107
  this.FloatPrecision=2; //小数位数
53090
53108
  this.IsShow=true; //是否显示
53091
53109
  this.Callback; //绘制标题回调
53110
+ this.ExtendData; //扩展数据
53092
53111
  }
53093
53112
 
53094
53113
  function DynamicChartTitlePainting()
@@ -53845,6 +53864,10 @@ function DynamicChartTitlePainting()
53845
53864
  if (data.Out) return data.Out;
53846
53865
  }
53847
53866
  }
53867
+
53868
+ if (item.DataType=="ChartBand") //默认不输出
53869
+ return null;
53870
+
53848
53871
 
53849
53872
  var arrowSuper=null; //独立颜色
53850
53873
 
@@ -4453,6 +4453,8 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
4453
4453
  chart.Frame.SubFrame[i].Frame.YSplitOperator.SplitType=item.SplitType;
4454
4454
  chart.Frame.SubFrame[i].Frame.YSplitOperator.DefaultSplitType=item.SplitType;
4455
4455
  }
4456
+ if (IFrameSplitOperator.IsNumber(item.FilterType)) subFrame.YSplitOperator.FilterType=item.FilterType;
4457
+
4456
4458
  if (!isNaN(item.Height)) chart.Frame.SubFrame[i].Height = item.Height;
4457
4459
  if (item.IsShowLeftText===false || item.IsShowLeftText===true)
4458
4460
  {
@@ -4931,6 +4933,8 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
4931
4933
  chart.Frame.SubFrame[i].Frame.YSplitOperator.SplitType=item.SplitType;
4932
4934
  chart.Frame.SubFrame[i].Frame.YSplitOperator.DefaultSplitType=item.SplitType;
4933
4935
  }
4936
+ if (IFrameSplitOperator.IsNumber(item.FilterType)) subFrame.YSplitOperator.FilterType=item.FilterType;
4937
+
4934
4938
  if (item.IsShowLeftText==false)
4935
4939
  {
4936
4940
  chart.Frame.SubFrame[i].Frame.IsShowYText[0]=item.IsShowLeftText;
@@ -5076,6 +5080,7 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
5076
5080
  if (IFrameSplitOperator.IsBool(item.TitleWindow)) frame.TitleWindow=item.TitleWindow;
5077
5081
 
5078
5082
  if (IFrameSplitOperator.IsNumber(item.YSplitType)) chart.Frame.SubFrame[index].Frame.YSplitOperator.SplitType=item.YSplitType;
5083
+ if (IFrameSplitOperator.IsNumber(item.FilterType)) chart.Frame.SubFrame[index].Frame.YSplitOperator.FilterType=item.FilterType;
5079
5084
  if (!isNaN(item.TitleHeight)) chart.Frame.SubFrame[index].Frame.ChartBorder.TitleHeight=item.TitleHeight;
5080
5085
  if (IFrameSplitOperator.IsBool(item.IsDrawTitleBG)) chart.Frame.SubFrame[index].Frame.IsDrawTitleBG=item.IsDrawTitleBG;
5081
5086
  if (IFrameSplitOperator.IsBool(item.IsShowNameArrow)) chart.Frame.SubFrame[index].Frame.IsShowNameArrow=item.IsShowNameArrow;
@@ -49519,7 +49524,7 @@ function IFrameSplitOperator()
49519
49524
  return true;
49520
49525
  }
49521
49526
 
49522
- this.Filter = function (aryInfo,keepZero)
49527
+ this.Filter=function(aryInfo, keepZero, filterType)
49523
49528
  {
49524
49529
  if (this.SplitCount <= 0 || aryInfo.length <= 0 || aryInfo.length <= this.SplitCount) return aryInfo;
49525
49530
 
@@ -49527,17 +49532,28 @@ function IFrameSplitOperator()
49527
49532
  var filter = parseInt(aryInfo.length / this.SplitCount);
49528
49533
  if (filter <= 1) filter = 2;
49529
49534
  var data = [];
49530
- for (var i = 0; i < aryInfo.length; i += filter)
49535
+ if (filterType==1)
49531
49536
  {
49532
- if (i + filter >= aryInfo.length && i != aryInfo.length - 1) //最后一个数据放进去
49537
+ for (var i = 0; i < aryInfo.length; i += filter)
49533
49538
  {
49534
- data.push(aryInfo[aryInfo.length - 1]);
49539
+ data.push(aryInfo[i]);
49535
49540
  }
49536
- else
49541
+ }
49542
+ else
49543
+ {
49544
+ for (var i = 0; i < aryInfo.length; i += filter)
49537
49545
  {
49538
- data.push(aryInfo[i]);
49546
+ if (i + filter >= aryInfo.length && i != aryInfo.length - 1) //最后一个数据放进去
49547
+ {
49548
+ data.push(aryInfo[aryInfo.length - 1]);
49549
+ }
49550
+ else
49551
+ {
49552
+ data.push(aryInfo[i]);
49553
+ }
49539
49554
  }
49540
49555
  }
49556
+
49541
49557
 
49542
49558
  if (this.SplitCount == 2 && data.length>2) //之显示第1个和最后一个刻度
49543
49559
  {
@@ -49575,7 +49591,7 @@ function IFrameSplitOperator()
49575
49591
  return data;
49576
49592
  }
49577
49593
 
49578
- this.RemoveZero = function (aryInfo) //移除小数后面多余的0
49594
+ this.RemoveZero=function(aryInfo) //移除小数后面多余的0
49579
49595
  {
49580
49596
  //所有的数字小数点后面都0,才会去掉
49581
49597
  var isAllZero = [true, true, true, true];
@@ -51143,6 +51159,7 @@ function FrameSplitY()
51143
51159
  this.FloatPrecision = 2; //坐标小数位数(默认2)
51144
51160
  this.FLOATPRECISION_RANGE=[1,0.1,0.01,0.001,0.0001];
51145
51161
  this.SplitType=0; //0=自动分割 1=固定分割 2=堆积图(0-100)
51162
+ this.FilterType=0; //自动分割过滤算法
51146
51163
  this.DefaultSplitType=0;
51147
51164
  this.Custom=[]; //[{Type:0}]; 定制刻度
51148
51165
  this.DefaultYMaxMin; //{ Max:null, Min:null }; //指定最大,最小, Y轴范围必须比最大值大, 比最小值小
@@ -51334,7 +51351,8 @@ function FrameSplitY()
51334
51351
  this.FilterIgnoreYValue();
51335
51352
 
51336
51353
  this.CustomCoordinate();
51337
- if (this.SplitType!=1) this.Frame.HorizontalInfo = this.Filter(this.Frame.HorizontalInfo,(splitData.Max>0 && splitData.Min<0));
51354
+ if (this.SplitType!=1)
51355
+ this.Frame.HorizontalInfo = this.Filter(this.Frame.HorizontalInfo,(splitData.Max>0 && splitData.Min<0), this.FilterType);
51338
51356
 
51339
51357
  this.RightFrameSplitY();
51340
51358
  this.MainOverlayFrameSplitY(); //主图Y轴绑定叠加Y轴坐标
@@ -57014,6 +57032,7 @@ function DynamicTitleData(data,name,color)
57014
57032
  this.FloatPrecision=2; //小数位数
57015
57033
  this.IsShow=true; //是否显示
57016
57034
  this.Callback; //绘制标题回调
57035
+ this.ExtendData; //扩展数据
57017
57036
  }
57018
57037
 
57019
57038
  function DynamicChartTitlePainting()
@@ -57770,6 +57789,10 @@ function DynamicChartTitlePainting()
57770
57789
  if (data.Out) return data.Out;
57771
57790
  }
57772
57791
  }
57792
+
57793
+ if (item.DataType=="ChartBand") //默认不输出
57794
+ return null;
57795
+
57773
57796
 
57774
57797
  var arrowSuper=null; //独立颜色
57775
57798
 
@@ -117598,6 +117621,12 @@ function ScriptIndex(name,script,args,option)
117598
117621
 
117599
117622
  if (IFrameSplitOperator.IsBool(varItem.IsFirstDraw)) chart.IsDrawFirst=varItem.IsFirstDraw;
117600
117623
 
117624
+ var titleIndex=windowIndex+1;
117625
+ var titleData=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);
117626
+ titleData.DataType=chart.ClassName;
117627
+ titleData.ExtendData={ Color:[chart.FirstColor, chart.SecondColor] };
117628
+ hqChart.TitlePaint[titleIndex].Data[id]=titleData;
117629
+
117601
117630
  this.SetChartIndexName(chart);
117602
117631
  hqChart.ChartPaint.push(chart);
117603
117632
  }
@@ -134312,7 +134341,7 @@ function ScrollBarBGChart()
134312
134341
 
134313
134342
 
134314
134343
 
134315
- var HQCHART_VERSION="1.1.13465";
134344
+ var HQCHART_VERSION="1.1.13467";
134316
134345
 
134317
134346
  function PrintHQChartVersion()
134318
134347
  {
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var HQCHART_VERSION="1.1.13465";
8
+ var HQCHART_VERSION="1.1.13467";
9
9
 
10
10
  function PrintHQChartVersion()
11
11
  {
@@ -4497,6 +4497,8 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
4497
4497
  chart.Frame.SubFrame[i].Frame.YSplitOperator.SplitType=item.SplitType;
4498
4498
  chart.Frame.SubFrame[i].Frame.YSplitOperator.DefaultSplitType=item.SplitType;
4499
4499
  }
4500
+ if (IFrameSplitOperator.IsNumber(item.FilterType)) subFrame.YSplitOperator.FilterType=item.FilterType;
4501
+
4500
4502
  if (!isNaN(item.Height)) chart.Frame.SubFrame[i].Height = item.Height;
4501
4503
  if (item.IsShowLeftText===false || item.IsShowLeftText===true)
4502
4504
  {
@@ -4975,6 +4977,8 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
4975
4977
  chart.Frame.SubFrame[i].Frame.YSplitOperator.SplitType=item.SplitType;
4976
4978
  chart.Frame.SubFrame[i].Frame.YSplitOperator.DefaultSplitType=item.SplitType;
4977
4979
  }
4980
+ if (IFrameSplitOperator.IsNumber(item.FilterType)) subFrame.YSplitOperator.FilterType=item.FilterType;
4981
+
4978
4982
  if (item.IsShowLeftText==false)
4979
4983
  {
4980
4984
  chart.Frame.SubFrame[i].Frame.IsShowYText[0]=item.IsShowLeftText;
@@ -5120,6 +5124,7 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
5120
5124
  if (IFrameSplitOperator.IsBool(item.TitleWindow)) frame.TitleWindow=item.TitleWindow;
5121
5125
 
5122
5126
  if (IFrameSplitOperator.IsNumber(item.YSplitType)) chart.Frame.SubFrame[index].Frame.YSplitOperator.SplitType=item.YSplitType;
5127
+ if (IFrameSplitOperator.IsNumber(item.FilterType)) chart.Frame.SubFrame[index].Frame.YSplitOperator.FilterType=item.FilterType;
5123
5128
  if (!isNaN(item.TitleHeight)) chart.Frame.SubFrame[index].Frame.ChartBorder.TitleHeight=item.TitleHeight;
5124
5129
  if (IFrameSplitOperator.IsBool(item.IsDrawTitleBG)) chart.Frame.SubFrame[index].Frame.IsDrawTitleBG=item.IsDrawTitleBG;
5125
5130
  if (IFrameSplitOperator.IsBool(item.IsShowNameArrow)) chart.Frame.SubFrame[index].Frame.IsShowNameArrow=item.IsShowNameArrow;
@@ -49563,7 +49568,7 @@ function IFrameSplitOperator()
49563
49568
  return true;
49564
49569
  }
49565
49570
 
49566
- this.Filter = function (aryInfo,keepZero)
49571
+ this.Filter=function(aryInfo, keepZero, filterType)
49567
49572
  {
49568
49573
  if (this.SplitCount <= 0 || aryInfo.length <= 0 || aryInfo.length <= this.SplitCount) return aryInfo;
49569
49574
 
@@ -49571,17 +49576,28 @@ function IFrameSplitOperator()
49571
49576
  var filter = parseInt(aryInfo.length / this.SplitCount);
49572
49577
  if (filter <= 1) filter = 2;
49573
49578
  var data = [];
49574
- for (var i = 0; i < aryInfo.length; i += filter)
49579
+ if (filterType==1)
49575
49580
  {
49576
- if (i + filter >= aryInfo.length && i != aryInfo.length - 1) //最后一个数据放进去
49581
+ for (var i = 0; i < aryInfo.length; i += filter)
49577
49582
  {
49578
- data.push(aryInfo[aryInfo.length - 1]);
49583
+ data.push(aryInfo[i]);
49579
49584
  }
49580
- else
49585
+ }
49586
+ else
49587
+ {
49588
+ for (var i = 0; i < aryInfo.length; i += filter)
49581
49589
  {
49582
- data.push(aryInfo[i]);
49590
+ if (i + filter >= aryInfo.length && i != aryInfo.length - 1) //最后一个数据放进去
49591
+ {
49592
+ data.push(aryInfo[aryInfo.length - 1]);
49593
+ }
49594
+ else
49595
+ {
49596
+ data.push(aryInfo[i]);
49597
+ }
49583
49598
  }
49584
49599
  }
49600
+
49585
49601
 
49586
49602
  if (this.SplitCount == 2 && data.length>2) //之显示第1个和最后一个刻度
49587
49603
  {
@@ -49619,7 +49635,7 @@ function IFrameSplitOperator()
49619
49635
  return data;
49620
49636
  }
49621
49637
 
49622
- this.RemoveZero = function (aryInfo) //移除小数后面多余的0
49638
+ this.RemoveZero=function(aryInfo) //移除小数后面多余的0
49623
49639
  {
49624
49640
  //所有的数字小数点后面都0,才会去掉
49625
49641
  var isAllZero = [true, true, true, true];
@@ -51187,6 +51203,7 @@ function FrameSplitY()
51187
51203
  this.FloatPrecision = 2; //坐标小数位数(默认2)
51188
51204
  this.FLOATPRECISION_RANGE=[1,0.1,0.01,0.001,0.0001];
51189
51205
  this.SplitType=0; //0=自动分割 1=固定分割 2=堆积图(0-100)
51206
+ this.FilterType=0; //自动分割过滤算法
51190
51207
  this.DefaultSplitType=0;
51191
51208
  this.Custom=[]; //[{Type:0}]; 定制刻度
51192
51209
  this.DefaultYMaxMin; //{ Max:null, Min:null }; //指定最大,最小, Y轴范围必须比最大值大, 比最小值小
@@ -51378,7 +51395,8 @@ function FrameSplitY()
51378
51395
  this.FilterIgnoreYValue();
51379
51396
 
51380
51397
  this.CustomCoordinate();
51381
- if (this.SplitType!=1) this.Frame.HorizontalInfo = this.Filter(this.Frame.HorizontalInfo,(splitData.Max>0 && splitData.Min<0));
51398
+ if (this.SplitType!=1)
51399
+ this.Frame.HorizontalInfo = this.Filter(this.Frame.HorizontalInfo,(splitData.Max>0 && splitData.Min<0), this.FilterType);
51382
51400
 
51383
51401
  this.RightFrameSplitY();
51384
51402
  this.MainOverlayFrameSplitY(); //主图Y轴绑定叠加Y轴坐标
@@ -57058,6 +57076,7 @@ function DynamicTitleData(data,name,color)
57058
57076
  this.FloatPrecision=2; //小数位数
57059
57077
  this.IsShow=true; //是否显示
57060
57078
  this.Callback; //绘制标题回调
57079
+ this.ExtendData; //扩展数据
57061
57080
  }
57062
57081
 
57063
57082
  function DynamicChartTitlePainting()
@@ -57814,6 +57833,10 @@ function DynamicChartTitlePainting()
57814
57833
  if (data.Out) return data.Out;
57815
57834
  }
57816
57835
  }
57836
+
57837
+ if (item.DataType=="ChartBand") //默认不输出
57838
+ return null;
57839
+
57817
57840
 
57818
57841
  var arrowSuper=null; //独立颜色
57819
57842
 
@@ -117642,6 +117665,12 @@ function ScriptIndex(name,script,args,option)
117642
117665
 
117643
117666
  if (IFrameSplitOperator.IsBool(varItem.IsFirstDraw)) chart.IsDrawFirst=varItem.IsFirstDraw;
117644
117667
 
117668
+ var titleIndex=windowIndex+1;
117669
+ var titleData=new DynamicTitleData(chart.Data,varItem.Name,chart.Color);
117670
+ titleData.DataType=chart.ClassName;
117671
+ titleData.ExtendData={ Color:[chart.FirstColor, chart.SecondColor] };
117672
+ hqChart.TitlePaint[titleIndex].Data[id]=titleData;
117673
+
117645
117674
  this.SetChartIndexName(chart);
117646
117675
  hqChart.ChartPaint.push(chart);
117647
117676
  }
@@ -138253,7 +138282,7 @@ function HQChartScriptWorker()
138253
138282
 
138254
138283
 
138255
138284
 
138256
- var HQCHART_VERSION="1.1.13465";
138285
+ var HQCHART_VERSION="1.1.13467";
138257
138286
 
138258
138287
  function PrintHQChartVersion()
138259
138288
  {