hqchart 1.1.12555 → 1.1.12560
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/umychart.vue.js +8 -8
- package/package.json +1 -1
- package/src/jscommon/umychart.complier.js +1 -1
- package/src/jscommon/umychart.js +28 -9
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +30 -11
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.vue.js +30 -11
package/lib/umychart.vue.js
CHANGED
|
@@ -1327,7 +1327,7 @@ for(var i=0;i<chart.Frame.SubFrame.length;++i){chart.Frame.SubFrame[i].Frame.Cha
|
|
|
1327
1327
|
};this.SetChartBorder=function(chart,option){if(!option.Border)return;var item=option.Border;if(IFrameSplitOperator.IsNumber(option.Border.Left))chart.Frame.ChartBorder.Left=option.Border.Left;else option.Border.Left=chart.Frame.ChartBorder.Left;if(IFrameSplitOperator.IsNumber(option.Border.Right))chart.Frame.ChartBorder.Right=option.Border.Right;else option.Border.Right=chart.Frame.ChartBorder.Right;if(IFrameSplitOperator.IsNumber(option.Border.Top))chart.Frame.ChartBorder.Top=option.Border.Top;else option.Border.Top=chart.Frame.ChartBorder.Top;if(IFrameSplitOperator.IsNumber(option.Border.Bottom))chart.Frame.ChartBorder.Bottom=option.Border.Bottom;else option.Border.Bottom=chart.Frame.ChartBorder.Bottom;if(item.AutoLeft){chart.Frame.AutoLeftBorder={};if(IFrameSplitOperator.IsNumber(item.AutoLeft.Blank))chart.Frame.AutoLeftBorder.Blank=item.AutoLeft.Blank;if(IFrameSplitOperator.IsNumber(item.AutoLeft.MinWidth))chart.Frame.AutoLeftBorder.MinWidth=item.AutoLeft.MinWidth;}if(item.AutoRight){chart.Frame.AutoRightBorder={};if(IFrameSplitOperator.IsNumber(item.AutoRight.Blank))chart.Frame.AutoRightBorder.Blank=item.AutoRight.Blank;if(IFrameSplitOperator.IsNumber(item.AutoRight.MinWidth))chart.Frame.AutoRightBorder.MinWidth=item.AutoRight.MinWidth;}};this.SetEventCallback=function(chart,aryCallback){if(!chart)return;if(!IFrameSplitOperator.IsNonEmptyArray(aryCallback))return;for(var i=0;i<aryCallback.length;++i){var item=aryCallback[i];chart.AddEventCallback(item);}};//历史K线图
|
|
1328
1328
|
this.CreateKLineChartContainer=function(option){var _this2=this;var chart=null;if(option.Type==="历史K线图横屏")chart=new KLineChartHScreenContainer(this.CanvasElement);else chart=new KLineChartContainer(this.CanvasElement,this.OffscreenCanvasElement,this.CacheCanvasElement);chart.GetExtraCanvas=function(name){return _this2.GetExtraCanvas(name);};var extraElement=this.GetExtraCanvas(JSChart.CorssCursorCanvasKey);if(extraElement)chart.SetCorssCursorElement(extraElement);if(option.EventCallback)this.SetEventCallback(chart,option.EventCallback);if(option.NetworkFilter)chart.NetworkFilter=option.NetworkFilter;//创建改参数div
|
|
1329
1329
|
chart.ModifyIndexDialog=this.ModifyIndexDialog;chart.ChangeIndexDialog=this.ChangeIndexDialog;chart.MinuteDialog=this.MinuteDialog;//右键菜单
|
|
1330
|
-
if(option.IsShowRightMenu==true)chart.RightMenu=new KLineRightMenu(this.DivElement);if(option.ScriptError)chart.ScriptErrorCallback=option.ScriptError;chart.SelectRectRightMenu=new KLineSelectRightMenu(this.DivElement);if(option.EnableScrollUpDown==true)chart.EnableScrollUpDown=option.EnableScrollUpDown;if(option.DisableMouse==true)chart.DisableMouse=option.DisableMouse;if(option.TouchMoveMinAngle)chart.TouchMoveMinAngle=option.TouchMoveMinAngle;if(option.EnableZoomUpDown)chart.EnableZoomUpDown=option.EnableZoomUpDown;if(IFrameSplitOperator.IsString(option.SplashTitle))chart.LoadDataSplashTitle=option.SplashTitle;if(IFrameSplitOperator.IsBool(option.EnableZoomIndexWindow))chart.EnableZoomIndexWindow=option.EnableZoomIndexWindow;if(IFrameSplitOperator.IsBool(option.IsDrawPictureXY))chart.IsDrawPictureXY=option.IsDrawPictureXY;if(IFrameSplitOperator.IsNumber(option.CtrlMoveStep))chart.CtrlMoveStep=option.CtrlMoveStep;if(IFrameSplitOperator.IsBool(option.EnableIndexChartDrag))chart.EnableIndexChartDrag=option.EnableIndexChartDrag;if(IFrameSplitOperator.IsBool(option.EnableVerifyRecvData))chart.EnableVerifyRecvData=option.EnableVerifyRecvData;if(option.EnableYDrag){var item=option.EnableYDrag;if(IFrameSplitOperator.IsBool(item.Left))chart.EnableYDrag.Left=item.Left;if(IFrameSplitOperator.IsBool(item.Right))chart.EnableYDrag.Right=item.Right;}if(option.KLine)//k线图的属性设置
|
|
1330
|
+
if(option.IsShowRightMenu==true)chart.RightMenu=new KLineRightMenu(this.DivElement);if(option.ScriptError)chart.ScriptErrorCallback=option.ScriptError;chart.SelectRectRightMenu=new KLineSelectRightMenu(this.DivElement);if(option.EnableScrollUpDown==true)chart.EnableScrollUpDown=option.EnableScrollUpDown;if(option.DisableMouse==true)chart.DisableMouse=option.DisableMouse;if(option.TouchMoveMinAngle)chart.TouchMoveMinAngle=option.TouchMoveMinAngle;if(option.EnableZoomUpDown)chart.EnableZoomUpDown=option.EnableZoomUpDown;if(IFrameSplitOperator.IsString(option.SplashTitle))chart.LoadDataSplashTitle=option.SplashTitle;if(IFrameSplitOperator.IsBool(option.EnableZoomIndexWindow))chart.EnableZoomIndexWindow=option.EnableZoomIndexWindow;if(IFrameSplitOperator.IsBool(option.IsDrawPictureXY))chart.IsDrawPictureXY=option.IsDrawPictureXY;if(IFrameSplitOperator.IsNumber(option.CtrlMoveStep))chart.CtrlMoveStep=option.CtrlMoveStep;if(IFrameSplitOperator.IsBool(option.EnableIndexChartDrag))chart.EnableIndexChartDrag=option.EnableIndexChartDrag;if(IFrameSplitOperator.IsBool(option.EnableVerifyRecvData))chart.EnableVerifyRecvData=option.EnableVerifyRecvData;if(option.GlobalOption){var item=option.GlobalOption;if(IFrameSplitOperator.IsBool(item.IsValueFullRange))chart.GlobalOption.IsValueFullRange=item.IsValueFullRange;}if(option.EnableYDrag){var item=option.EnableYDrag;if(IFrameSplitOperator.IsBool(item.Left))chart.EnableYDrag.Left=item.Left;if(IFrameSplitOperator.IsBool(item.Right))chart.EnableYDrag.Right=item.Right;}if(option.KLine)//k线图的属性设置
|
|
1331
1331
|
{if(option.KLine.DragMode>=0)chart.DragMode=option.KLine.DragMode;if(option.KLine.Right>=0)chart.Right=option.KLine.Right;if(option.KLine.Period>=0)chart.Period=option.KLine.Period;if(option.KLine.MaxReqeustDataCount>0)chart.MaxRequestDataCount=option.KLine.MaxReqeustDataCount;//兼容老版本
|
|
1332
1332
|
if(option.KLine.MaxRequestDataCount>0)chart.MaxRequestDataCount=option.KLine.MaxRequestDataCount;if(option.KLine.Info&&option.KLine.Info.length>0)chart.SetKLineInfo(option.KLine.Info,false);if(option.KLine.KLineDoubleClick==false)chart.MinuteDialog=this.MinuteDialog=null;if(option.KLine.IsShowTooltip==false)chart.IsShowTooltip=false;if(option.KLine.MaxRequestMinuteDayCount>0)chart.MaxRequestMinuteDayCount=option.KLine.MaxRequestMinuteDayCount;if(option.KLine.DrawType)chart.KLineDrawType=option.KLine.DrawType;if(option.KLine.FirstShowDate>19910101)chart.CustomShow={Date:option.KLine.FirstShowDate,PageSize:option.KLine.PageSize};if(option.KLine.RightSpaceCount>0)chart.RightSpaceCount=option.KLine.RightSpaceCount;if(option.KLine.ZoomType>0)chart.ZoomType=option.KLine.ZoomType;if(option.KLine.DataWidth>=1)chart.KLineSize={DataWidth:option.KLine.DataWidth};if(IFrameSplitOperator.IsNumber(option.KLine.RightFormula))chart.RightFormula=option.KLine.RightFormula;}if(option.EnableFlowCapital){var item=option.EnableFlowCapital;if(item.BIT==true)chart.EnableFlowCapital.BIT=item.BIT;}if(IFrameSplitOperator.IsBool(option.EnableBorderDrag)){chart.EnableBorderDrag=option.EnableBorderDrag;}if(option.Page){if(option.Page.Day&&option.Page.Day.Enable==true)chart.Page.Day.Enable=true;if(option.Page.Minute&&option.Page.Minute.Enable==true)chart.Page.Minute.Enable=true;}if(option.DragDownload){if(option.DragDownload.Day&&option.DragDownload.Day.Enable==true)chart.DragDownload.Day.Enable=true;if(option.DragDownload.Minute&&option.DragDownload.Minute.Enable==true)chart.DragDownload.Minute.Enable=true;}if(option.ZoomDownload){if(option.ZoomDownload.Day&&IFrameSplitOperator.IsBool(option.ZoomDownload.Day.Enable))chart.ZoomDownload.Day.Enable=option.ZoomDownload.Day.Enable;if(option.ZoomDownload.Minute&&IFrameSplitOperator.IsBool(option.ZoomDownload.Minute.Enable))chart.ZoomDownload.Minute.Enable=option.ZoomDownload.Minute.Enable;}if(option.Language){var value=g_JSChartLocalization.GetLanguageID(option.Language);if(IFrameSplitOperator.IsNumber(value))chart.LanguageID=value;}if(option.SourceDatatLimit)chart.SetSourceDatatLimit(option.SourceDatatLimit);if(option.DrawPicture)//画图工具
|
|
1333
1333
|
{if(option.DrawPicture.StorageKey&&chart.ChartDrawStorage)chart.ChartDrawStorage.Load(option.DrawPicture.StorageKey);}if(option.DrawTool)//画图工具
|
|
@@ -3564,8 +3564,8 @@ return true;}}for(var i in this.InfoTooltipRect){var item=this.InfoTooltipRect[i
|
|
|
3564
3564
|
tooltip.Data=item;tooltip.ChartPaint=this;tooltip.Type=1;//信息地雷
|
|
3565
3565
|
return true;}}for(var i in this.TooltipRect){var rect=this.TooltipRect[i][1];this.Canvas.beginPath();this.Canvas.rect(rect.X,rect.Y,rect.Width,rect.Height);if(this.Canvas.isPointInPath(x,y)){var index=this.TooltipRect[i][0];tooltip.Data=this.Data.Data[index];tooltip.ChartPaint=this;tooltip.Type=0;//K线信息
|
|
3566
3566
|
return true;}}return false;};//计算当天显示数据的最大最小值
|
|
3567
|
-
this.GetMaxMin=function(){if(this.DrawType==14){if(this.FFKChart&&this.FFKChart.GetMaxMin){return this.FFKChart.GetMaxMin(this);}}var xPointCount=this.ChartFrame.XPointCount;var
|
|
3568
|
-
{for(var i=
|
|
3567
|
+
this.GetMaxMin=function(){if(this.DrawType==14){if(this.FFKChart&&this.FFKChart.GetMaxMin){return this.FFKChart.GetMaxMin(this);}}var xPointCount=this.ChartFrame.XPointCount;var start=this.Data.DataOffset;if(this.ChartFrame.GlobalOption&&this.ChartFrame.GlobalOption.IsValueFullRange){start=0;xPointCount=this.Data.Data.length;}var range={Max:null,Min:null};if(this.DrawType==1||this.DrawType==4)// 1=收盘价线 4=收盘价面积图
|
|
3568
|
+
{for(var i=start,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j){var data=this.Data.Data[i];if(!IFrameSplitOperator.IsNumber(data.Close))continue;if(range.Max==null)range.Max=data.Close;if(range.Min==null)range.Min=data.Close;if(range.Max<data.Close)range.Max=data.Close;if(range.Min>data.Close)range.Min=data.Close;}}else{for(var i=start,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j){var data=this.Data.Data[i];if(data.Open==null||data.High==null||data.Low==null||data.Close==null)continue;if(this.DrawType==5&&data.OrderFlow&&IFrameSplitOperator.IsNumber(data.OrderFlow.PriceOffset)){var high=data.High;var low=data.Low;if(IFrameSplitOperator.IsNonEmptyArray(data.OrderFlow.High)){for(var k=0;k<data.OrderFlow.High.length;++k){var item=data.OrderFlow.High[k];if(high<item.Price)high=item.Price;}}if(IFrameSplitOperator.IsNonEmptyArray(data.OrderFlow.Low)){for(var k=0;k<data.OrderFlow.Low.length;++k){var item=data.OrderFlow.Low[k];if(low>item.Price)low=item.Price;}}high+=data.OrderFlow.PriceOffset;low-=data.OrderFlow.PriceOffset;if(range.Max==null)range.Max=high;if(range.Min==null)range.Min=low;if(range.Max<high)range.Max=high;if(range.Min>low)range.Min=low;}else{if(range.Max==null)range.Max=data.High;if(range.Min==null)range.Min=data.Low;if(range.Max<data.High)range.Max=data.High;if(range.Min>data.Low)range.Min=data.Low;}}}return range;};//获取所有的价格
|
|
3569
3569
|
this.GetAllPrice=function(){var xPointCount=this.ChartFrame.XPointCount;var setPrice=new _set2.default();for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j){var data=this.Data.Data[i];if(data.Open==null||data.High==null||data.Low==null||data.Close==null)continue;var value=data.Close;setPrice.add(value);}var aryPrice=[];var _iteratorNormalCompletion4=true;var _didIteratorError4=false;var _iteratorError4=undefined;try{for(var _iterator4=(0,_getIterator3.default)(setPrice),_step4;!(_iteratorNormalCompletion4=(_step4=_iterator4.next()).done);_iteratorNormalCompletion4=true){var item=_step4.value;aryPrice.push(item);}}catch(err){_didIteratorError4=true;_iteratorError4=err;}finally{try{if(!_iteratorNormalCompletion4&&_iterator4.return){_iterator4.return();}}finally{if(_didIteratorError4){throw _iteratorError4;}}}aryPrice.sort(function(a,b){return a-b;});//排序 升序
|
|
3570
3570
|
return aryPrice;};this.DrawLastPointEvent=function(ptLast){if(!this.GetEventCallback)return;//通知外部绘制最后一个点
|
|
3571
3571
|
var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_DRAW_KLINE_LAST_POINT);if(event){var kWidth={Data:this.ChartFrame.DataWidth,Distance:this.ChartFrame.DistanceWidth};if(ptLast)var data={LastPoint:{X:ptLast.X,Y:ptLast.Y,XLeft:ptLast.XLeft,XRight:ptLast.XRight},KItem:ptLast.KItem,DrawType:this.DrawType,KWidth:kWidth,ChartRight:ptLast.ChartRight};else var data={LastPoint:null,KItem:null,KWidth:kWidth};event.Callback(event,data,this);}};this.DrawOrderFlow=function(){var isHScreen=this.ChartFrame.IsHScreen===true;var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;var border=this.ChartBorder.GetBorder();var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;var chartright=border.RightEx;var xPointCount=this.ChartFrame.XPointCount;if(isHScreen){var border=this.ChartBorder.GetHScreenBorder();xOffset=border.TopEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;chartright=border.BottomEx;}var upColor=this.UpColor;var downColor=this.DownColor;var unchagneColor=this.UnchagneColor;this.ShowRange.Start=this.Data.DataOffset;this.ShowRange.End=this.ShowRange.Start;this.ShowRange.DataCount=0;this.ShowRange.ShowCount=xPointCount;this.DrawKRange.Start=this.Data.DataOffset;var ptLast=null;this.DrawOrderFlowHBar();//横向柱子
|
|
@@ -3871,7 +3871,7 @@ if(bUp&&(this.KLineDrawType==1||this.KLineDrawType==2||this.KLineDrawType==3))//
|
|
|
3871
3871
|
{this.Canvas.strokeStyle=this.UpColor;this.Canvas.beginPath();this.Canvas.rect(ToFixedPoint(yBottom),ToFixedPoint(left),height,ToFixedRect(dataWidth));this.Canvas.stroke();}else{this.Canvas.fillRect(yBottom,ToFixedRect(left),height,ToFixedRect(dataWidth));}}}else//太细了直接话线
|
|
3872
3872
|
{var preKItem=null;var barColor=null;for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j,xOffset+=dataWidth+distanceWidth){var value=this.Data.Data[i];var kItem=this.HistoryData.Data[i];if(value==null||kItem==null)continue;var y=this.ChartFrame.GetYFromData(value);if(isMinute){var x=this.ChartFrame.GetXFromIndex(j);}else{var left=xOffset;var right=xOffset+dataWidth;var x=left+(right-left)/2;}if(x>chartBottom)break;if(isMinute)barColor=this.GetMinuteBarColor(kItem,preKItem);//分时图颜色单独计算
|
|
3873
3873
|
else barColor=this.GetBarColor(kItem);var bUp=barColor.IsUp;this.Canvas.strokeStyle=barColor.Color;//var x=this.ChartFrame.GetXFromIndex(j);
|
|
3874
|
-
this.Canvas.beginPath();this.Canvas.moveTo(y,ToFixedPoint(x));this.Canvas.lineTo(yBottom,ToFixedPoint(x));this.Canvas.stroke();preKItem=kItem;}}};this.GetMaxMin=function(){var xPointCount=this.ChartFrame.XPointCount;var
|
|
3874
|
+
this.Canvas.beginPath();this.Canvas.moveTo(y,ToFixedPoint(x));this.Canvas.lineTo(yBottom,ToFixedPoint(x));this.Canvas.stroke();preKItem=kItem;}}};this.GetMaxMin=function(){var xPointCount=this.ChartFrame.XPointCount;var start=this.Data.DataOffset;if(this.ChartFrame.GlobalOption&&this.ChartFrame.GlobalOption.IsValueFullRange){start=0;xPointCount=this.Data.Data.length;}var range={Min:null,Max:null};for(var i=start,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j){var value=this.Data.Data[i];if(!IFrameSplitOperator.IsNumber(range.Max)||range.Max<value)range.Max=value;if(!IFrameSplitOperator.IsNumber(range.Min)||range.Min>value)range.Min=value;}if(range.Max>0&&range.Min>0)range.Min=0;else if(range.Max<0&&range.Min<0)range.Max=0;return range;};this.GetBarColor=function(kItem){if(kItem.Close>=kItem.Open)return{Color:this.UpColor,IsUp:true};//颜色, 是否是上涨
|
|
3875
3875
|
else return{Color:this.DownColor,IsUp:false};};this.GetMinuteBarColor=function(kItem,preItem){var prePrice=kItem.YClose;if(preItem)prePrice=preItem.Close;if(kItem.Close>=prePrice)return{Color:this.UpColor,IsUp:true};//颜色, 是否是上涨
|
|
3876
3876
|
else return{Color:this.DownColor,IsUp:false};};this.GetItemData=function(indexData){if(!indexData)return null;if(!IFrameSplitOperator.IsNumber(indexData.Index))return null;if(!this.HistoryData||!IFrameSplitOperator.IsNonEmptyArray(this.HistoryData.Data))return null;if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return null;var index=indexData.Index;if(index<0||index>=this.Data.Data.length||index>=this.HistoryData.Data.length)return null;var item=this.Data.Data[index];var kItem=this.HistoryData.Data[index];return[{Value:item,Color:this.GetBarColor(kItem).Color,Name:this.Name}];};}// VERTLINE(HIGH>=HHV(HIGH,20),1)表示在创20天新高画垂直虚线。
|
|
3877
3877
|
// 支持横屏
|
|
@@ -6763,12 +6763,12 @@ if(this.CursorIndex+step+data.DataOffset+1>data.Data.length)//数据不够步长
|
|
|
6763
6763
|
this.GetKLineChart=function(){if(!this.ChartPaint[0])return null;return this.ChartPaint[0];};//创建子窗口
|
|
6764
6764
|
this.CreateChildWindow=function(windowCount){var _this18=this;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CREATE_FRAME);for(var i=0;i<windowCount;++i){var border=new ChartBorder();border.UIElement=this.UIElement;var frame=g_ChartFrameFactory.Create("KLineFrame",{ID:i});frame.Canvas=this.Canvas;frame.ChartBorder=border;frame.Identify=i;//窗口序号
|
|
6765
6765
|
frame.RightSpaceCount=this.RightSpaceCount;//右边
|
|
6766
|
-
frame.GetEventCallback=function(id){return _this18.GetEventCallback(id);};if(this.ModifyIndexDialog)frame.ModifyIndexEvent=this.ModifyIndexDialog.DoModal;//绑定菜单事件
|
|
6766
|
+
frame.GetEventCallback=function(id){return _this18.GetEventCallback(id);};frame.GlobalOption=this.GlobalOption;if(this.ModifyIndexDialog)frame.ModifyIndexEvent=this.ModifyIndexDialog.DoModal;//绑定菜单事件
|
|
6767
6767
|
if(this.ChangeIndexDialog)frame.ChangeIndexEvent=this.ChangeIndexDialog.DoModal;frame.HorizontalMax=20;frame.HorizontalMin=10;if(i==0){frame.YSplitOperator=new FrameSplitKLinePriceY();frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('price');frame.YSplitOperator.FrameSplitData2=this.FrameSplitData.get('double');frame.YSplitOperator.GetEventCallback=function(id){return _this18.GetEventCallback(id);};frame.YSplitOperator.GetKLineChartCallback=function(){return _this18.GetKLineChart();};frame.YSplitOperator.HQChart=this;var pixelTatio=GetDevicePixelRatio();//获取设备的分辨率
|
|
6768
6768
|
border.BottomSpace=15*pixelTatio;//主图上下留空间
|
|
6769
6769
|
border.TopSpace=15*pixelTatio;frame.GetEventCallback=function(id){return _this18.GetEventCallback(id);};}else{frame.YSplitOperator=new FrameSplitY();frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('double');frame.YSplitOperator.LanguageID=this.LanguageID;frame.YSplitOperator.GetEventCallback=function(id){return _this18.GetEventCallback(id);};frame.YSplitOperator.GetKLineChartCallback=function(){return _this18.GetKLineChart();};frame.YSplitOperator.HQChart=this;//frame.IsLocked = true;
|
|
6770
6770
|
}frame.YSplitOperator.Frame=frame;frame.YSplitOperator.ChartBorder=border;frame.XSplitOperator=new FrameSplitKLineX();frame.XSplitOperator.Frame=frame;frame.XSplitOperator.ChartBorder=border;frame.XSplitOperator.LanguageID=this.LanguageID;frame.XSplitOperator.GetEventCallback=function(id){return _this18.GetEventCallback(id);};if(i!=windowCount-1)frame.XSplitOperator.ShowText=false;for(var j=frame.HorizontalMin;j<=frame.HorizontalMax;j+=1){frame.HorizontalInfo[j]=new CoordinateInfo();frame.HorizontalInfo[j].Value=j;if(i==0&&j==frame.HorizontalMin)continue;frame.HorizontalInfo[j].Message[1]=j.toString();frame.HorizontalInfo[j].Font="14px 微软雅黑";}var subFrame=new SubFrameItem();subFrame.Frame=frame;if(i==0)subFrame.Height=20;else subFrame.Height=10;this.Frame.SubFrame[i]=subFrame;if(event&&event.Callback){var sendData={SubFrame:this.Frame.SubFrame[i],WindowIndex:i};event.Callback(event,sendData,this);}}};this.CreateSubFrameItem=function(id){var _this19=this;var border=new ChartBorder();border.UIElement=this.UIElement;var frameClassName="KLineFrame";if(this.ClassName=="KLineChartHScreenContainer")frameClassName="KLineHScreenFrame";var frame=g_ChartFrameFactory.Create(frameClassName,{ID:id});frame.Canvas=this.Canvas;frame.ChartBorder=border;frame.Identify=id;//窗口序号
|
|
6771
|
-
frame.GetEventCallback=function(id){return _this19.GetEventCallback(id);};if(this.ModifyIndexDialog)frame.ModifyIndexEvent=this.ModifyIndexDialog.DoModal;//绑定菜单事件
|
|
6771
|
+
frame.GetEventCallback=function(id){return _this19.GetEventCallback(id);};frame.GlobalOption=this.GlobalOption;if(this.ModifyIndexDialog)frame.ModifyIndexEvent=this.ModifyIndexDialog.DoModal;//绑定菜单事件
|
|
6772
6772
|
if(this.ChangeIndexDialog)frame.ChangeIndexEvent=this.ChangeIndexDialog.DoModal;frame.HorizontalMax=20;frame.HorizontalMin=10;frame.YSplitOperator=new FrameSplitY();frame.YSplitOperator.LanguageID=this.LanguageID;frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('double');frame.YSplitOperator.Frame=frame;frame.YSplitOperator.ChartBorder=border;frame.XSplitOperator=new FrameSplitKLineX();frame.XSplitOperator.Frame=frame;frame.XSplitOperator.ChartBorder=border;frame.XSplitOperator.ShowText=false;frame.YSplitOperator.GetEventCallback=function(id){return _this19.GetEventCallback(id);};frame.YSplitOperator.GetKLineChartCallback=function(){return _this19.GetKLineChart();};frame.YSplitOperator.HQChart=this;frame.XSplitOperator.Symbol=this.Symbol;frame.XSplitOperator.Period=this.Period;//K线数据绑定
|
|
6773
6773
|
var xPointCouont=this.Frame.SubFrame[0].Frame.XPointCount;frame.XPointCount=xPointCouont;frame.Data=this.ChartPaint[0].Data;for(var j=frame.HorizontalMin;j<=frame.HorizontalMax;j+=1){frame.HorizontalInfo[j]=new CoordinateInfo();frame.HorizontalInfo[j].Value=j;frame.HorizontalInfo[j].Message[1]=j.toString();frame.HorizontalInfo[j].Font="14px 微软雅黑";}var subFrame=new SubFrameItem();subFrame.Frame=frame;subFrame.Height=10;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CREATE_FRAME);if(event&&event.Callback){var sendData={SubFrame:subFrame,WindowIndex:id};event.Callback(event,sendData,this);}return subFrame;};//创建主图K线画法
|
|
6774
6774
|
this.CreateMainKLine=function(){var _this20=this;var kline=g_ChartPaintFactory.Create("ChartKLine");kline.Canvas=this.Canvas;kline.ChartBorder=this.Frame.SubFrame[0].Frame.ChartBorder;kline.ChartFrame=this.Frame.SubFrame[0].Frame;kline.Name="Main-KLine";kline.DrawType=this.KLineDrawType;kline.Identify="Main-KLine";kline.GetEventCallback=function(id){return _this20.GetEventCallback(id);};this.ChartPaint[0]=kline;this.TitlePaint[0]=new DynamicKLineTitlePainting();this.TitlePaint[0].Frame=this.Frame.SubFrame[0].Frame;this.TitlePaint[0].Canvas=this.Canvas;this.TitlePaint[0].OverlayChartPaint=this.OverlayChartPaint;//绑定叠加
|
|
@@ -11517,7 +11517,7 @@ var aryPoint=[];for(var i in sourceData){var item=sourceData[i];for(var j in ite
|
|
|
11517
11517
|
{var kdata=hqChart.ChartPaint[0].Data;//K线
|
|
11518
11518
|
var aryPoint=[];for(var i in sourceData){var item=sourceData[i];for(var j in item.Point){var point=item.Point[j];aryPoint.push(point);}}aryPoint.sort(function(a,b){if(a.Date==b.Date)return a.Time-b.Time;return a.Date-b.Date;});kdata.GetDateTimeIndex(aryPoint);return sourceData;}else if(this.HQDataType==HQ_DATA_TYPE.MINUTE_ID||this.HQDataType==HQ_DATA_TYPE.MULTIDAY_MINUTE_ID){var minuteData=hqChart.SourceData;var aryPoint=[];for(var i in sourceData){var item=sourceData[i];for(var j in item.Point){var point=item.Point[j];aryPoint.push(point);}}aryPoint.sort(function(a,b){if(a.Date==b.Date)return a.Time-b.Time;return a.Date-b.Date;});minuteData.GetDateTimeIndex(aryPoint);return sourceData;}return null;};this.FittingMultiText=function(sourceData,date,time,hqChart){if(ChartData.IsDayPeriod(hqChart.Period,true))//日线
|
|
11519
11519
|
{var kdata=hqChart.ChartPaint[0].Data;//K线
|
|
11520
|
-
sourceData.sort(function(a,b){return a.Date-b.Date;});kdata.GetDateIndex(sourceData);return sourceData;}else if(ChartData.IsMinutePeriod(hqChart.Period,true)||ChartData.IsTickPeriod(hqChart.Period)||ChartData.IsSecondPeriod(hqChart.Period))//分钟线
|
|
11520
|
+
sourceData.sort(function(a,b){return a.Date-b.Date;});kdata.GetDateIndex(sourceData);return sourceData;}else if(ChartData.IsMinutePeriod(hqChart.Period,true)||ChartData.IsTickPeriod(hqChart.Period)||ChartData.IsSecondPeriod(hqChart.Period)||ChartData.IsMilliSecondPeriod(hqChart.Period))//分钟线
|
|
11521
11521
|
{var kdata=hqChart.ChartPaint[0].Data;//K线
|
|
11522
11522
|
sourceData.sort(function(a,b){if(a.Date==b.Date)return a.Time-b.Time;return a.Date-b.Date;});kdata.GetDateTimeIndex(sourceData);return sourceData;}else if(this.HQDataType==HQ_DATA_TYPE.MINUTE_ID||this.HQDataType==HQ_DATA_TYPE.MULTIDAY_MINUTE_ID){var minuteData=hqChart.SourceData;sourceData.sort(function(a,b){if(a.Date==b.Date)return a.Time-b.Time;return a.Date-b.Date;});minuteData.GetDateTimeIndex(sourceData);return sourceData;}return null;};this.FittingData=function(jsonData,hqChart){var outVar=jsonData.outvar;var date=jsonData.date;var time=jsonData.time;var kdata=hqChart.ChartPaint[0].Data;//把数据拟合到kdata上
|
|
11523
11523
|
var result=[];if(!outVar)return result;for(var i=0;i<outVar.length;++i){var item=outVar[i];var indexData=[];var outVarItem={Name:item.name,Type:item.type};if(item.color)outVarItem.Color=item.color;if(item.data){outVarItem.Data=this.FittingArray(item.data,date,time,hqChart);if(item.color)outVarItem.Color=item.color;if(item.linewidth)outVarItem.LineWidth=item.linewidth;if(item.isshow==false)outVarItem.IsShow=false;if(item.isexdata==true)outVarItem.IsExData=true;if(item.BreakPoint)outVarItem.BreakPoint=item.BreakPoint;result.push(outVarItem);}else if(item.Draw){var draw=item.Draw;var drawItem={};if(draw.DrawType=='DRAWICON')//图标
|
|
@@ -12656,7 +12656,7 @@ function HQChartScriptWorker(){this.Create=function(){var _this60=this;addEventL
|
|
|
12656
12656
|
hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,Stock:{Symbol:message.Symbol},Request:{MaxDataCount:500,MaxMinuteDayCount:5},Period:message.Period,Right:message.Right,Data:hisData};if(IFrameSplitOperator.IsNumber(message.HQDataType))stockObj.HQDataType=message.HQDataType;indexConsole.ExecuteScript(stockObj);};this.OnRecvMessage=function(message){var data=message.data;if(!data)return;if(data.ID==JSCHART_WORKER_MESSAGE_ID.EXECUTE_SCRIPT){if(!IFrameSplitOperator.IsNonEmptyArray(data.AryIndex))return;for(var i=0;i<data.AryIndex.length;++i){var item=data.AryIndex[i];this.ExecuteScript(item,data);}}};this.OnExecuteFinish=function(data,indexInfo,jsExectute){var message={Data:data,IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.FINISH_EXECUTE_SCRIPT};postMessage(message);};this.OnExecuteError=function(error,indexInfo){var message={IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.ERROR_EXECUTE_SCRIPT,Error:error};postMessage(message);};}/********************************************************************************
|
|
12657
12657
|
* 版本信息输出
|
|
12658
12658
|
*
|
|
12659
|
-
*/var HQCHART_VERSION="1.1.
|
|
12659
|
+
*/var HQCHART_VERSION="1.1.12559";function PrintHQChartVersion(){var log='*************************************************************************************************************\n*\n* HQChart Ver: '+HQCHART_VERSION+' \n* \n* License: Apache License 2.0 \n* Source: https://github.com/jones2000/HQChart\n*\n*************************************************************************************************************\n';console.log(log);}PrintHQChartVersion();//把给外界调用的方法暴露出来
|
|
12660
12660
|
exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
|
|
12661
12661
|
// BaseIndex:BaseIndex,
|
|
12662
12662
|
// ChartLine:ChartLine,
|
package/package.json
CHANGED
|
@@ -22997,7 +22997,7 @@ function APIScriptIndex(name,script,args,option, isOverlay)
|
|
|
22997
22997
|
kdata.GetDateIndex(sourceData);
|
|
22998
22998
|
return sourceData;
|
|
22999
22999
|
}
|
|
23000
|
-
else if (ChartData.IsMinutePeriod(hqChart.Period,true) || ChartData.IsTickPeriod(hqChart.Period) || ChartData.IsSecondPeriod(hqChart.Period)) //分钟线
|
|
23000
|
+
else if (ChartData.IsMinutePeriod(hqChart.Period,true) || ChartData.IsTickPeriod(hqChart.Period) || ChartData.IsSecondPeriod(hqChart.Period) || ChartData.IsMilliSecondPeriod(hqChart.Period)) //分钟线
|
|
23001
23001
|
{
|
|
23002
23002
|
var kdata=hqChart.ChartPaint[0].Data; //K线
|
|
23003
23003
|
|
package/src/jscommon/umychart.js
CHANGED
|
@@ -281,6 +281,12 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
281
281
|
if (IFrameSplitOperator.IsBool(option.EnableIndexChartDrag)) chart.EnableIndexChartDrag=option.EnableIndexChartDrag;
|
|
282
282
|
if (IFrameSplitOperator.IsBool(option.EnableVerifyRecvData)) chart.EnableVerifyRecvData=option.EnableVerifyRecvData;
|
|
283
283
|
|
|
284
|
+
if (option.GlobalOption)
|
|
285
|
+
{
|
|
286
|
+
var item=option.GlobalOption;
|
|
287
|
+
if (IFrameSplitOperator.IsBool(item.IsValueFullRange)) chart.GlobalOption.IsValueFullRange=item.IsValueFullRange;
|
|
288
|
+
}
|
|
289
|
+
|
|
284
290
|
if (option.EnableYDrag)
|
|
285
291
|
{
|
|
286
292
|
var item=option.EnableYDrag;
|
|
@@ -24321,12 +24327,18 @@ function ChartKLine()
|
|
|
24321
24327
|
}
|
|
24322
24328
|
|
|
24323
24329
|
var xPointCount=this.ChartFrame.XPointCount;
|
|
24324
|
-
var
|
|
24325
|
-
|
|
24326
|
-
|
|
24330
|
+
var start=this.Data.DataOffset;
|
|
24331
|
+
if (this.ChartFrame.GlobalOption && this.ChartFrame.GlobalOption.IsValueFullRange)
|
|
24332
|
+
{
|
|
24333
|
+
start=0;
|
|
24334
|
+
xPointCount=this.Data.Data.length;
|
|
24335
|
+
}
|
|
24336
|
+
|
|
24337
|
+
var range={ Max:null, Min:null };
|
|
24338
|
+
|
|
24327
24339
|
if (this.DrawType==1 || this.DrawType==4 ) // 1=收盘价线 4=收盘价面积图
|
|
24328
24340
|
{
|
|
24329
|
-
for(var i=
|
|
24341
|
+
for(var i=start,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j)
|
|
24330
24342
|
{
|
|
24331
24343
|
var data=this.Data.Data[i];
|
|
24332
24344
|
if (!IFrameSplitOperator.IsNumber(data.Close)) continue;
|
|
@@ -24340,7 +24352,7 @@ function ChartKLine()
|
|
|
24340
24352
|
}
|
|
24341
24353
|
else
|
|
24342
24354
|
{
|
|
24343
|
-
for(var i=
|
|
24355
|
+
for(var i=start,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j)
|
|
24344
24356
|
{
|
|
24345
24357
|
var data=this.Data.Data[i];
|
|
24346
24358
|
if (data.Open==null || data.High==null || data.Low==null || data.Close==null) continue;
|
|
@@ -29280,10 +29292,15 @@ function ChartVolStick()
|
|
|
29280
29292
|
this.GetMaxMin=function()
|
|
29281
29293
|
{
|
|
29282
29294
|
var xPointCount=this.ChartFrame.XPointCount;
|
|
29283
|
-
var
|
|
29284
|
-
|
|
29285
|
-
|
|
29286
|
-
|
|
29295
|
+
var start=this.Data.DataOffset;
|
|
29296
|
+
if (this.ChartFrame.GlobalOption && this.ChartFrame.GlobalOption.IsValueFullRange)
|
|
29297
|
+
{
|
|
29298
|
+
start=0;
|
|
29299
|
+
xPointCount=this.Data.Data.length;
|
|
29300
|
+
}
|
|
29301
|
+
|
|
29302
|
+
var range={ Min:null, Max:null };
|
|
29303
|
+
for(var i=start,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j)
|
|
29287
29304
|
{
|
|
29288
29305
|
var value=this.Data.Data[i];
|
|
29289
29306
|
if (!IFrameSplitOperator.IsNumber(range.Max) || range.Max<value) range.Max=value;
|
|
@@ -65213,6 +65230,7 @@ function KLineChartContainer(uielement,OffscreenElement)
|
|
|
65213
65230
|
frame.Identify=i; //窗口序号
|
|
65214
65231
|
frame.RightSpaceCount=this.RightSpaceCount; //右边
|
|
65215
65232
|
frame.GetEventCallback=(id)=> { return this.GetEventCallback(id); };
|
|
65233
|
+
frame.GlobalOption=this.GlobalOption;
|
|
65216
65234
|
|
|
65217
65235
|
if (this.ModifyIndexDialog) frame.ModifyIndexEvent=this.ModifyIndexDialog.DoModal; //绑定菜单事件
|
|
65218
65236
|
if (this.ChangeIndexDialog) frame.ChangeIndexEvent=this.ChangeIndexDialog.DoModal;
|
|
@@ -65295,6 +65313,7 @@ function KLineChartContainer(uielement,OffscreenElement)
|
|
|
65295
65313
|
frame.ChartBorder=border;
|
|
65296
65314
|
frame.Identify=id; //窗口序号
|
|
65297
65315
|
frame.GetEventCallback=(id)=> { return this.GetEventCallback(id); };
|
|
65316
|
+
frame.GlobalOption=this.GlobalOption;
|
|
65298
65317
|
|
|
65299
65318
|
if (this.ModifyIndexDialog) frame.ModifyIndexEvent=this.ModifyIndexDialog.DoModal; //绑定菜单事件
|
|
65300
65319
|
if (this.ChangeIndexDialog) frame.ChangeIndexEvent=this.ChangeIndexDialog.DoModal;
|
|
@@ -4361,6 +4361,12 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
4361
4361
|
if (IFrameSplitOperator.IsBool(option.EnableIndexChartDrag)) chart.EnableIndexChartDrag=option.EnableIndexChartDrag;
|
|
4362
4362
|
if (IFrameSplitOperator.IsBool(option.EnableVerifyRecvData)) chart.EnableVerifyRecvData=option.EnableVerifyRecvData;
|
|
4363
4363
|
|
|
4364
|
+
if (option.GlobalOption)
|
|
4365
|
+
{
|
|
4366
|
+
var item=option.GlobalOption;
|
|
4367
|
+
if (IFrameSplitOperator.IsBool(item.IsValueFullRange)) chart.GlobalOption.IsValueFullRange=item.IsValueFullRange;
|
|
4368
|
+
}
|
|
4369
|
+
|
|
4364
4370
|
if (option.EnableYDrag)
|
|
4365
4371
|
{
|
|
4366
4372
|
var item=option.EnableYDrag;
|
|
@@ -28401,12 +28407,18 @@ function ChartKLine()
|
|
|
28401
28407
|
}
|
|
28402
28408
|
|
|
28403
28409
|
var xPointCount=this.ChartFrame.XPointCount;
|
|
28404
|
-
var
|
|
28405
|
-
|
|
28406
|
-
|
|
28410
|
+
var start=this.Data.DataOffset;
|
|
28411
|
+
if (this.ChartFrame.GlobalOption && this.ChartFrame.GlobalOption.IsValueFullRange)
|
|
28412
|
+
{
|
|
28413
|
+
start=0;
|
|
28414
|
+
xPointCount=this.Data.Data.length;
|
|
28415
|
+
}
|
|
28416
|
+
|
|
28417
|
+
var range={ Max:null, Min:null };
|
|
28418
|
+
|
|
28407
28419
|
if (this.DrawType==1 || this.DrawType==4 ) // 1=收盘价线 4=收盘价面积图
|
|
28408
28420
|
{
|
|
28409
|
-
for(var i=
|
|
28421
|
+
for(var i=start,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j)
|
|
28410
28422
|
{
|
|
28411
28423
|
var data=this.Data.Data[i];
|
|
28412
28424
|
if (!IFrameSplitOperator.IsNumber(data.Close)) continue;
|
|
@@ -28420,7 +28432,7 @@ function ChartKLine()
|
|
|
28420
28432
|
}
|
|
28421
28433
|
else
|
|
28422
28434
|
{
|
|
28423
|
-
for(var i=
|
|
28435
|
+
for(var i=start,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j)
|
|
28424
28436
|
{
|
|
28425
28437
|
var data=this.Data.Data[i];
|
|
28426
28438
|
if (data.Open==null || data.High==null || data.Low==null || data.Close==null) continue;
|
|
@@ -33360,10 +33372,15 @@ function ChartVolStick()
|
|
|
33360
33372
|
this.GetMaxMin=function()
|
|
33361
33373
|
{
|
|
33362
33374
|
var xPointCount=this.ChartFrame.XPointCount;
|
|
33363
|
-
var
|
|
33364
|
-
|
|
33365
|
-
|
|
33366
|
-
|
|
33375
|
+
var start=this.Data.DataOffset;
|
|
33376
|
+
if (this.ChartFrame.GlobalOption && this.ChartFrame.GlobalOption.IsValueFullRange)
|
|
33377
|
+
{
|
|
33378
|
+
start=0;
|
|
33379
|
+
xPointCount=this.Data.Data.length;
|
|
33380
|
+
}
|
|
33381
|
+
|
|
33382
|
+
var range={ Min:null, Max:null };
|
|
33383
|
+
for(var i=start,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j)
|
|
33367
33384
|
{
|
|
33368
33385
|
var value=this.Data.Data[i];
|
|
33369
33386
|
if (!IFrameSplitOperator.IsNumber(range.Max) || range.Max<value) range.Max=value;
|
|
@@ -69293,6 +69310,7 @@ function KLineChartContainer(uielement,OffscreenElement)
|
|
|
69293
69310
|
frame.Identify=i; //窗口序号
|
|
69294
69311
|
frame.RightSpaceCount=this.RightSpaceCount; //右边
|
|
69295
69312
|
frame.GetEventCallback=(id)=> { return this.GetEventCallback(id); };
|
|
69313
|
+
frame.GlobalOption=this.GlobalOption;
|
|
69296
69314
|
|
|
69297
69315
|
if (this.ModifyIndexDialog) frame.ModifyIndexEvent=this.ModifyIndexDialog.DoModal; //绑定菜单事件
|
|
69298
69316
|
if (this.ChangeIndexDialog) frame.ChangeIndexEvent=this.ChangeIndexDialog.DoModal;
|
|
@@ -69375,6 +69393,7 @@ function KLineChartContainer(uielement,OffscreenElement)
|
|
|
69375
69393
|
frame.ChartBorder=border;
|
|
69376
69394
|
frame.Identify=id; //窗口序号
|
|
69377
69395
|
frame.GetEventCallback=(id)=> { return this.GetEventCallback(id); };
|
|
69396
|
+
frame.GlobalOption=this.GlobalOption;
|
|
69378
69397
|
|
|
69379
69398
|
if (this.ModifyIndexDialog) frame.ModifyIndexEvent=this.ModifyIndexDialog.DoModal; //绑定菜单事件
|
|
69380
69399
|
if (this.ChangeIndexDialog) frame.ChangeIndexEvent=this.ChangeIndexDialog.DoModal;
|
|
@@ -116670,7 +116689,7 @@ function APIScriptIndex(name,script,args,option, isOverlay)
|
|
|
116670
116689
|
kdata.GetDateIndex(sourceData);
|
|
116671
116690
|
return sourceData;
|
|
116672
116691
|
}
|
|
116673
|
-
else if (ChartData.IsMinutePeriod(hqChart.Period,true) || ChartData.IsTickPeriod(hqChart.Period) || ChartData.IsSecondPeriod(hqChart.Period)) //分钟线
|
|
116692
|
+
else if (ChartData.IsMinutePeriod(hqChart.Period,true) || ChartData.IsTickPeriod(hqChart.Period) || ChartData.IsSecondPeriod(hqChart.Period) || ChartData.IsMilliSecondPeriod(hqChart.Period)) //分钟线
|
|
116674
116693
|
{
|
|
116675
116694
|
var kdata=hqChart.ChartPaint[0].Data; //K线
|
|
116676
116695
|
|
|
@@ -129422,7 +129441,7 @@ function ScrollBarBGChart()
|
|
|
129422
129441
|
|
|
129423
129442
|
|
|
129424
129443
|
|
|
129425
|
-
var HQCHART_VERSION="1.1.
|
|
129444
|
+
var HQCHART_VERSION="1.1.12559";
|
|
129426
129445
|
|
|
129427
129446
|
function PrintHQChartVersion()
|
|
129428
129447
|
{
|
|
@@ -4405,6 +4405,12 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
|
|
|
4405
4405
|
if (IFrameSplitOperator.IsBool(option.EnableIndexChartDrag)) chart.EnableIndexChartDrag=option.EnableIndexChartDrag;
|
|
4406
4406
|
if (IFrameSplitOperator.IsBool(option.EnableVerifyRecvData)) chart.EnableVerifyRecvData=option.EnableVerifyRecvData;
|
|
4407
4407
|
|
|
4408
|
+
if (option.GlobalOption)
|
|
4409
|
+
{
|
|
4410
|
+
var item=option.GlobalOption;
|
|
4411
|
+
if (IFrameSplitOperator.IsBool(item.IsValueFullRange)) chart.GlobalOption.IsValueFullRange=item.IsValueFullRange;
|
|
4412
|
+
}
|
|
4413
|
+
|
|
4408
4414
|
if (option.EnableYDrag)
|
|
4409
4415
|
{
|
|
4410
4416
|
var item=option.EnableYDrag;
|
|
@@ -28445,12 +28451,18 @@ function ChartKLine()
|
|
|
28445
28451
|
}
|
|
28446
28452
|
|
|
28447
28453
|
var xPointCount=this.ChartFrame.XPointCount;
|
|
28448
|
-
var
|
|
28449
|
-
|
|
28450
|
-
|
|
28454
|
+
var start=this.Data.DataOffset;
|
|
28455
|
+
if (this.ChartFrame.GlobalOption && this.ChartFrame.GlobalOption.IsValueFullRange)
|
|
28456
|
+
{
|
|
28457
|
+
start=0;
|
|
28458
|
+
xPointCount=this.Data.Data.length;
|
|
28459
|
+
}
|
|
28460
|
+
|
|
28461
|
+
var range={ Max:null, Min:null };
|
|
28462
|
+
|
|
28451
28463
|
if (this.DrawType==1 || this.DrawType==4 ) // 1=收盘价线 4=收盘价面积图
|
|
28452
28464
|
{
|
|
28453
|
-
for(var i=
|
|
28465
|
+
for(var i=start,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j)
|
|
28454
28466
|
{
|
|
28455
28467
|
var data=this.Data.Data[i];
|
|
28456
28468
|
if (!IFrameSplitOperator.IsNumber(data.Close)) continue;
|
|
@@ -28464,7 +28476,7 @@ function ChartKLine()
|
|
|
28464
28476
|
}
|
|
28465
28477
|
else
|
|
28466
28478
|
{
|
|
28467
|
-
for(var i=
|
|
28479
|
+
for(var i=start,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j)
|
|
28468
28480
|
{
|
|
28469
28481
|
var data=this.Data.Data[i];
|
|
28470
28482
|
if (data.Open==null || data.High==null || data.Low==null || data.Close==null) continue;
|
|
@@ -33404,10 +33416,15 @@ function ChartVolStick()
|
|
|
33404
33416
|
this.GetMaxMin=function()
|
|
33405
33417
|
{
|
|
33406
33418
|
var xPointCount=this.ChartFrame.XPointCount;
|
|
33407
|
-
var
|
|
33408
|
-
|
|
33409
|
-
|
|
33410
|
-
|
|
33419
|
+
var start=this.Data.DataOffset;
|
|
33420
|
+
if (this.ChartFrame.GlobalOption && this.ChartFrame.GlobalOption.IsValueFullRange)
|
|
33421
|
+
{
|
|
33422
|
+
start=0;
|
|
33423
|
+
xPointCount=this.Data.Data.length;
|
|
33424
|
+
}
|
|
33425
|
+
|
|
33426
|
+
var range={ Min:null, Max:null };
|
|
33427
|
+
for(var i=start,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j)
|
|
33411
33428
|
{
|
|
33412
33429
|
var value=this.Data.Data[i];
|
|
33413
33430
|
if (!IFrameSplitOperator.IsNumber(range.Max) || range.Max<value) range.Max=value;
|
|
@@ -69337,6 +69354,7 @@ function KLineChartContainer(uielement,OffscreenElement)
|
|
|
69337
69354
|
frame.Identify=i; //窗口序号
|
|
69338
69355
|
frame.RightSpaceCount=this.RightSpaceCount; //右边
|
|
69339
69356
|
frame.GetEventCallback=(id)=> { return this.GetEventCallback(id); };
|
|
69357
|
+
frame.GlobalOption=this.GlobalOption;
|
|
69340
69358
|
|
|
69341
69359
|
if (this.ModifyIndexDialog) frame.ModifyIndexEvent=this.ModifyIndexDialog.DoModal; //绑定菜单事件
|
|
69342
69360
|
if (this.ChangeIndexDialog) frame.ChangeIndexEvent=this.ChangeIndexDialog.DoModal;
|
|
@@ -69419,6 +69437,7 @@ function KLineChartContainer(uielement,OffscreenElement)
|
|
|
69419
69437
|
frame.ChartBorder=border;
|
|
69420
69438
|
frame.Identify=id; //窗口序号
|
|
69421
69439
|
frame.GetEventCallback=(id)=> { return this.GetEventCallback(id); };
|
|
69440
|
+
frame.GlobalOption=this.GlobalOption;
|
|
69422
69441
|
|
|
69423
69442
|
if (this.ModifyIndexDialog) frame.ModifyIndexEvent=this.ModifyIndexDialog.DoModal; //绑定菜单事件
|
|
69424
69443
|
if (this.ChangeIndexDialog) frame.ChangeIndexEvent=this.ChangeIndexDialog.DoModal;
|
|
@@ -116714,7 +116733,7 @@ function APIScriptIndex(name,script,args,option, isOverlay)
|
|
|
116714
116733
|
kdata.GetDateIndex(sourceData);
|
|
116715
116734
|
return sourceData;
|
|
116716
116735
|
}
|
|
116717
|
-
else if (ChartData.IsMinutePeriod(hqChart.Period,true) || ChartData.IsTickPeriod(hqChart.Period) || ChartData.IsSecondPeriod(hqChart.Period)) //分钟线
|
|
116736
|
+
else if (ChartData.IsMinutePeriod(hqChart.Period,true) || ChartData.IsTickPeriod(hqChart.Period) || ChartData.IsSecondPeriod(hqChart.Period) || ChartData.IsMilliSecondPeriod(hqChart.Period)) //分钟线
|
|
116718
116737
|
{
|
|
116719
116738
|
var kdata=hqChart.ChartPaint[0].Data; //K线
|
|
116720
116739
|
|
|
@@ -129575,7 +129594,7 @@ function HQChartScriptWorker()
|
|
|
129575
129594
|
|
|
129576
129595
|
|
|
129577
129596
|
|
|
129578
|
-
var HQCHART_VERSION="1.1.
|
|
129597
|
+
var HQCHART_VERSION="1.1.12559";
|
|
129579
129598
|
|
|
129580
129599
|
function PrintHQChartVersion()
|
|
129581
129600
|
{
|