hqchart 1.1.12836 → 1.1.12840
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.NetworkFilterTest.vue.js +2 -2
- package/lib/umychart.vue.js +5 -5
- package/package.json +1 -1
- package/src/jscommon/umychart.NetworkFilterTest.js +94 -0
- package/src/jscommon/umychart.js +52 -36
- package/src/jscommon/umychart.testdata/60000.sh.BlockTrading.js +967 -0
- package/src/jscommon/umychart.testdata/60000.sh.NewsInteract.js +7732 -0
- package/src/jscommon/umychart.testdata/60000.sh.TradeDetal.js +70 -0
- package/src/jscommon/umychart.testdata.js +94 -0
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +53 -37
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.NetworkFilterTest.vue.js +94 -0
- package/src/jscommon/umychart.vue/umychart.vue.js +53 -37
|
@@ -11,7 +11,7 @@ HQData.RequestRealtimeData(data,callback);break;case'KLineChartContainer::Reques
|
|
|
11
11
|
HQData.RequestFlowCapitalData(data,callback);break;case'KLineChartContainer::ReqeustHistoryMinuteData'://分钟全量数据下载
|
|
12
12
|
HQData.RequestHistoryMinuteData(data,callback);break;case'KLineChartContainer::RequestMinuteRealtimeData'://分钟增量数据更新
|
|
13
13
|
HQData.RequestMinuteRealtimeData(data,callback);break;case"JSSymbolData::GetVariantData"://额外的变量数据
|
|
14
|
-
HQData.RequestIndexVariantData(data,callback);break;}};HQData.RequestMinuteData=function(data,callback){data.PreventDefault=true;var symbol=data.Request.Data.symbol[0];//请求的股票代码
|
|
14
|
+
HQData.RequestIndexVariantData(data,callback);break;case"AnnouncementInfo::RequestData":HQData.AnnouncementInfo_RequestData(data,callback);break;case"PforecastInfo::RequestData":HQData.PforecastInfo_RequestData(data,callback);break;case"InvestorInfo::RequestData":HQData.InvestorInfo_RequestData(data,callback);break;case"ResearchInfo::RequestData":break;case"BlockTrading::RequestData":HQData.BlockTrading_RequestData(data,callback);break;case"TradeDetail::RequestData":HQData.TradeDetail_RequestData(data,callback);break;}};HQData.RequestMinuteData=function(data,callback){data.PreventDefault=true;var symbol=data.Request.Data.symbol[0];//请求的股票代码
|
|
15
15
|
var dayCount=data.Request.Data.daycount;console.log("[HQData::RequestMinuteData] Symbol="+symbol);var hqchartData=MINUTE_1DAY_DATA;hqchartData.stock[0].symbol=symbol;hqchartData.stock[0].name=symbol;callback(hqchartData);};HQData.RequestMinuteDaysData=function(data,callback){data.PreventDefault=true;var symbol=data.Request.Data.symbol;//请求的股票代码
|
|
16
16
|
var dayCount=data.Request.Data.daycount;console.log("[HQData::RequestMinuteDaysData] Symbol="+symbol);var hqchartData=MINUTE_5DAY_DATA;hqchartData.symbol=symbol;hqchartData.name=symbol;callback(hqchartData);};HQData.RequestHistoryData=function(data,callback){data.PreventDefault=true;var symbol=data.Request.Data.symbol;//请求的股票代码
|
|
17
17
|
console.log("[HQData::RequestMinuteDaysData] Symbol="+symbol);var hqchartData=KLINE_DAY_DATA;hqchartData.symbol=symbol;hqchartData.name=symbol;callback(hqchartData);};HQData.RequestFlowCapitalData=function(data,callback){data.PreventDefault=true;var symbol=data.Request.Data.symbol;//请求的股票代码
|
|
@@ -20,4 +20,4 @@ console.log("[HQData::RequestRealtimeData] Symbol="+symbol);var hqchartData=KLIN
|
|
|
20
20
|
console.log("[HQData::RequestHistoryMinuteData] Symbol="+symbol);var hqchartData=KLINE_MINUTE_DATA;hqchartData.name=symbol;hqchartData.symbol=symbol;callback(hqchartData);};HQData.RequestMinuteRealtimeData=function(data,callback){data.PreventDefault=true;var symbol=data.Request.Data.symbol[0];//请求的股票代码
|
|
21
21
|
console.log("[HQData::RequestMinuteRealtimeData] Symbol="+symbol);var hqchartData=JSON.parse((0,_stringify2.default)(KLINE_1MINUTE_DATA));var kItem=hqchartData.data[0];var price=kItem[5];var value=Math.ceil(Math.random()*10)/1000*price;var bUp=Math.ceil(Math.random()*10)>=5;if(bUp)price+=value;else price-=value;kItem[5]=price;kItem[3]=Math.max(price,kItem[3]);kItem[4]=Math.min(price,kItem[4]);hqchartData.name=symbol;hqchartData.symbol=symbol;callback(hqchartData);};HQData.RequestIndexVariantData=function(data,callback){var varName=data.Request.Data.VariantName;//变量名称
|
|
22
22
|
if(varName=="FROMOPEN"){var hqchartData={};//单数据
|
|
23
|
-
hqchartData.Data={Date:20230707,Value:240};hqchartData.DataType=1;callback(hqchartData);}};/*暴露外部用的方法*/exports.default={HQData:HQData};
|
|
23
|
+
hqchartData.Data={Date:20230707,Value:240};hqchartData.DataType=1;callback(hqchartData);}};HQData.AnnouncementInfo_RequestData=function(data,callback){data.PreventDefault=true;var symbol=data.Request.Symbol;var hqchartData={symbol:symbol,report:[]};var kData=data.HQChart.ChartPaint[0].Data;for(var i=0,j=1;i<kData.Data.length;++i){var kItem=kData.Data[i];if(i%10!=4)continue;var itemReport={releasedate:kItem.Date,time:kItem.Time,title:"\u516C\u544A("+j+") xxxx"};hqchartData.report.push(itemReport);++j;}callback(hqchartData);};HQData.PforecastInfo_RequestData=function(data,callback){data.PreventDefault=true;var symbol=data.Request.Symbol;var hqchartData={symbol:symbol,report:[]};var kData=data.HQChart.ChartPaint[0].Data;for(var i=0,j=1;i<kData.Data.length;++i){var kItem=kData.Data[i];if(i%10!=4)continue;var itemReport={date:kItem.Date,time:kItem.Time,title:"\u516C\u544A("+j+") xxxx"};hqchartData.report.push(itemReport);++j;}callback(hqchartData);};HQData.InvestorInfo_RequestData=function(data,callback){data.PreventDefault=true;var symbol=data.Request.Symbol;callback(TEST_NEWSINTERACT_DATA);};HQData.BlockTrading_RequestData=function(data,callback){data.PreventDefault=true;var symbol=data.Request.Symbol;callback(TEST_BLOCK_TRADING_DATA);};HQData.TradeDetail_RequestData=function(data,callback){data.PreventDefault=true;var symbol=data.Request.Symbol;callback(TEST_TRADE_DETAL_DATA);};/*暴露外部用的方法*/exports.default={HQData:HQData};
|
package/lib/umychart.vue.js
CHANGED
|
@@ -4164,9 +4164,9 @@ tooltip.Data=item;tooltip.ChartPaint=this;tooltip.Type=3;//异动信息
|
|
|
4164
4164
|
return true;}}return false;};}//MACD森林线 支持横屏
|
|
4165
4165
|
function ChartMACD(){this.newMethod=IChartPainting;//派生
|
|
4166
4166
|
this.newMethod();delete this.newMethod;this.ClassName="ChartMACD";this.UpColor=g_JSChartResource.UpBarColor;this.DownColor=g_JSChartResource.DownBarColor;this.LineWidth=1;this.DrawSelectedStatus=this.DrawLinePoint;this.ExportData=this.ExportArrayData;this.PtInChart=function(x,y){var dataWidth=this.ChartFrame.DataWidth;var barWidth=this.LineWidth*GetDevicePixelRatio();if(this.barWidth==50)barWidth=null;else if(barWidth>dataWidth)barWidth=dataWidth;if(barWidth<4)barWidth=4;//宽度太小了点不到
|
|
4167
|
-
return this.PtInBar(x,y,{BarWidth:barWidth});};this.
|
|
4168
|
-
|
|
4169
|
-
this.
|
|
4167
|
+
return this.PtInBar(x,y,{BarWidth:barWidth});};this.DrawBars=function(lineWidth,bUpBar){var isMinute=this.IsMinuteFrame();var border=this.ChartBorder.GetBorder();var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;var xPointCount=this.ChartFrame.XPointCount;var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;var chartright=border.RightEx;var lockRect=this.GetLockRect();if(lockRect)chartright=lockRect.Left;if(bUpBar)this.Canvas.strokeStyle=this.UpColor;else this.Canvas.strokeStyle=this.DownColor;var yBottom=this.ChartFrame.GetYFromData(0);this.Canvas.beginPath();var drawCount=0;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];if(value==null)continue;if(bUpBar){if(value<0)continue;}else{if(value>=0)continue;}if(isMinute){var x=this.ChartFrame.GetXFromIndex(j);}else{var left=xOffset;var right=xOffset+dataWidth;if(right>chartright)break;var x=left+(right-left)/2;}if(x>chartright)break;var y=this.ChartFrame.GetYFromData(value);var xFix=ToFixedPoint2(lineWidth,x);//毛边修正
|
|
4168
|
+
this.Canvas.moveTo(xFix,yBottom);this.Canvas.lineTo(xFix,y);++drawCount;}if(drawCount>0)this.Canvas.stroke();};this.Draw=function(){if(!this.IsShow||this.ChartFrame.IsMinSize||!this.IsVisible)return;if(this.IsShowIndexTitleOnly())return;if(this.IsHideScriptIndex())return;if(this.NotSupportMessage){this.DrawNotSupportmessage();return;}if(this.ChartFrame.IsHScreen===true){this.HScreenDraw();return;}var dataWidth=this.ChartFrame.DataWidth;var lineWidth=this.LineWidth*GetDevicePixelRatio();if(this.LineWidth==50)lineWidth=dataWidth;else if(lineWidth>dataWidth)lineWidth=dataWidth;var backupLineWidth=this.Canvas.lineWidth;this.Canvas.lineWidth=lineWidth;//上下分开画
|
|
4169
|
+
this.DrawBars(lineWidth,true);this.DrawBars(lineWidth,false);this.Canvas.lineWidth=backupLineWidth;};this.HScreenDraw=function(){var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;var border=this.ChartBorder.GetHScreenBorder();var chartright=border.BottomEx;var xPointCount=this.ChartFrame.XPointCount;var lockRect=this.GetLockRect();if(lockRect)chartright=lockRect.Top;var yBottom=this.ChartFrame.GetYFromData(0);var lineWidth=this.LineWidth*GetDevicePixelRatio();if(this.LineWidth==50)lineWidth=dataWidth;else if(lineWidth>dataWidth)lineWidth=dataWidth;var backupLineWidth=this.Canvas.lineWidth;this.Canvas.lineWidth=lineWidth;for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j){var value=this.Data.Data[i];if(value==null)continue;var x=this.ChartFrame.GetXFromIndex(j);var y=this.ChartFrame.GetYFromData(value);if(x>chartright)break;this.Canvas.beginPath();this.Canvas.moveTo(yBottom,ToFixedPoint(x));this.Canvas.lineTo(y,ToFixedPoint(x));if(value>=0)this.Canvas.strokeStyle=this.UpColor;else this.Canvas.strokeStyle=this.DownColor;this.Canvas.stroke();this.Canvas.closePath();}this.Canvas.lineWidth=backupLineWidth;};this.GetItemData=function(indexData){if(!indexData)return null;if(!IFrameSplitOperator.IsNumber(indexData.Index))return null;if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return null;var index=indexData.Index;if(index<0||index>=this.Data.Data.length)return null;var item=this.Data.Data[index];return[{Value:item,Color:item>0?this.UpColor:this.DownColor,Name:this.Name}];};}//柱子
|
|
4170
4170
|
function ChartBar(){this.newMethod=IChartPainting;//派生
|
|
4171
4171
|
this.newMethod();delete this.newMethod;this.ClassName="ChartBar";this.UpBarColor=g_JSChartResource.UpBarColor;this.DownBarColor=g_JSChartResource.DownBarColor;this.Draw=function(){if(this.ChartFrame.IsMinSize)return;if(this.NotSupportMessage){this.DrawNotSupportmessage();return;}var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;var chartright=this.ChartBorder.GetRight();var xPointCount=this.ChartFrame.XPointCount;var xOffset=this.ChartBorder.GetLeft()+distanceWidth/2.0+2.0;var bFirstPoint=true;var drawCount=0;var yBottom=this.ChartFrame.GetYFromData(0);if(dataWidth>=4){yBottom=ToFixedRect(yBottom);//调整为整数
|
|
4172
4172
|
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];if(value==null||value==0)continue;var left=xOffset;var right=xOffset+dataWidth;if(right>chartright)break;var x=this.ChartFrame.GetXFromIndex(j);var y=this.ChartFrame.GetYFromData(value);if(value>0)this.Canvas.fillStyle=this.UpBarColor;else this.Canvas.fillStyle=this.DownBarColor;//高度调整为整数
|
|
@@ -9256,7 +9256,7 @@ if(MARKET_SUFFIX_NAME.IsHSX(upperSymbol))return this.GetHSX(upperSymbol);if(MARK
|
|
|
9256
9256
|
{var splitData=g_IPETimeData.GetSplitData(upperSymbol);if(!splitData)return null;return this.GetFutures(splitData);}};}//走势图刻度分钟线
|
|
9257
9257
|
function MinuteCoordinateData(){//沪深走势图时间刻度
|
|
9258
9258
|
var SHZE_MINUTE_X_COORDINATE={Full://完整模式
|
|
9259
|
-
[[0,0,"rgb(200,200,200)","09:30"],//[0]=索引 [1]=线段类型 [2]=文字颜色(弃用) [3]=刻度文字 [4]=线段颜色 [5]=背景色
|
|
9259
|
+
[[0,0,"rgb(200,200,200)","09:30"],//[0]=索引 [1]=线段类型(预留) [2]=文字颜色(弃用) [3]=刻度文字 [4]=线段颜色 [5]=背景色
|
|
9260
9260
|
[31,0,"RGB(200,200,200)","10:00"],[61,0,"RGB(200,200,200)","10:30"],[91,0,"RGB(200,200,200)","11:00"],[122,1,"RGB(200,200,200)","13:00"],[152,0,"RGB(200,200,200)","13:30"],[182,0,"RGB(200,200,200)","14:00"],[212,0,"RGB(200,200,200)","14:30"],[242,1,"RGB(200,200,200)","15:00"]],Simple://简洁模式
|
|
9261
9261
|
[[0,0,"rgb(200,200,200)","09:30"],[61,0,"RGB(200,200,200)","10:30"],[122,1,"RGB(200,200,200)","13:00"],[182,0,"RGB(200,200,200)","14:00"],[242,1,"RGB(200,200,200)","15:00"]],Min://最小模式
|
|
9262
9262
|
[[0,0,"rgb(200,200,200)","09:30"],[122,1,"RGB(200,200,200)","13:00"],[242,1,"RGB(200,200,200)","15:00"]],Count:243,MiddleCount:122,GetData:function GetData(width){if(width<200)return this.Min;else if(width<400)return this.Simple;return this.Full;}};//上海股票期权时间刻度
|
|
@@ -13029,7 +13029,7 @@ hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,St
|
|
|
13029
13029
|
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);};}/********************************************************************************
|
|
13030
13030
|
* 版本信息输出
|
|
13031
13031
|
*
|
|
13032
|
-
*/var HQCHART_VERSION="1.1.
|
|
13032
|
+
*/var HQCHART_VERSION="1.1.12839";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();//把给外界调用的方法暴露出来
|
|
13033
13033
|
exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
|
|
13034
13034
|
// BaseIndex:BaseIndex,
|
|
13035
13035
|
// ChartLine:ChartLine,
|
package/package.json
CHANGED
|
@@ -48717,6 +48717,29 @@ HQData.NetworkFilter=function(data, callback)
|
|
|
48717
48717
|
case "JSSymbolData::GetVariantData": //额外的变量数据
|
|
48718
48718
|
HQData.RequestIndexVariantData(data,callback);
|
|
48719
48719
|
break;
|
|
48720
|
+
|
|
48721
|
+
case "AnnouncementInfo::RequestData":
|
|
48722
|
+
HQData.AnnouncementInfo_RequestData(data,callback);
|
|
48723
|
+
break;
|
|
48724
|
+
|
|
48725
|
+
case "PforecastInfo::RequestData":
|
|
48726
|
+
HQData.PforecastInfo_RequestData(data,callback);
|
|
48727
|
+
break;
|
|
48728
|
+
|
|
48729
|
+
case "InvestorInfo::RequestData":
|
|
48730
|
+
HQData.InvestorInfo_RequestData(data,callback);
|
|
48731
|
+
break;
|
|
48732
|
+
|
|
48733
|
+
case "ResearchInfo::RequestData":
|
|
48734
|
+
break;
|
|
48735
|
+
|
|
48736
|
+
case "BlockTrading::RequestData":
|
|
48737
|
+
HQData.BlockTrading_RequestData(data,callback);
|
|
48738
|
+
break;
|
|
48739
|
+
|
|
48740
|
+
case "TradeDetail::RequestData":
|
|
48741
|
+
HQData.TradeDetail_RequestData(data,callback);
|
|
48742
|
+
break;
|
|
48720
48743
|
}
|
|
48721
48744
|
}
|
|
48722
48745
|
|
|
@@ -48842,3 +48865,74 @@ HQData.RequestIndexVariantData=function(data,callback)
|
|
|
48842
48865
|
}
|
|
48843
48866
|
|
|
48844
48867
|
}
|
|
48868
|
+
|
|
48869
|
+
HQData.AnnouncementInfo_RequestData=function(data,callback)
|
|
48870
|
+
{
|
|
48871
|
+
data.PreventDefault=true;
|
|
48872
|
+
var symbol=data.Request.Symbol;
|
|
48873
|
+
|
|
48874
|
+
var hqchartData={ symbol:symbol, report:[] };
|
|
48875
|
+
|
|
48876
|
+
var kData=data.HQChart.ChartPaint[0].Data;
|
|
48877
|
+
for(var i=0, j=1;i<kData.Data.length;++i)
|
|
48878
|
+
{
|
|
48879
|
+
var kItem=kData.Data[i];
|
|
48880
|
+
if (i%10!=4) continue;
|
|
48881
|
+
|
|
48882
|
+
var itemReport={ releasedate:kItem.Date, time:kItem.Time, title:`公告(${j}) xxxx`, }
|
|
48883
|
+
|
|
48884
|
+
hqchartData.report.push(itemReport);
|
|
48885
|
+
|
|
48886
|
+
++j;
|
|
48887
|
+
}
|
|
48888
|
+
|
|
48889
|
+
callback(hqchartData);
|
|
48890
|
+
}
|
|
48891
|
+
|
|
48892
|
+
|
|
48893
|
+
HQData.PforecastInfo_RequestData=function(data,callback)
|
|
48894
|
+
{
|
|
48895
|
+
data.PreventDefault=true;
|
|
48896
|
+
var symbol=data.Request.Symbol;
|
|
48897
|
+
|
|
48898
|
+
var hqchartData={ symbol:symbol, report:[] };
|
|
48899
|
+
|
|
48900
|
+
var kData=data.HQChart.ChartPaint[0].Data;
|
|
48901
|
+
for(var i=0, j=1;i<kData.Data.length;++i)
|
|
48902
|
+
{
|
|
48903
|
+
var kItem=kData.Data[i];
|
|
48904
|
+
if (i%10!=4) continue;
|
|
48905
|
+
|
|
48906
|
+
var itemReport={ date:kItem.Date, time:kItem.Time, title:`公告(${j}) xxxx`, }
|
|
48907
|
+
|
|
48908
|
+
hqchartData.report.push(itemReport);
|
|
48909
|
+
|
|
48910
|
+
++j;
|
|
48911
|
+
}
|
|
48912
|
+
|
|
48913
|
+
callback(hqchartData);
|
|
48914
|
+
}
|
|
48915
|
+
|
|
48916
|
+
HQData.InvestorInfo_RequestData=function(data,callback)
|
|
48917
|
+
{
|
|
48918
|
+
data.PreventDefault=true;
|
|
48919
|
+
var symbol=data.Request.Symbol;
|
|
48920
|
+
|
|
48921
|
+
callback(TEST_NEWSINTERACT_DATA);
|
|
48922
|
+
}
|
|
48923
|
+
|
|
48924
|
+
HQData.BlockTrading_RequestData=function(data,callback)
|
|
48925
|
+
{
|
|
48926
|
+
data.PreventDefault=true;
|
|
48927
|
+
var symbol=data.Request.Symbol;
|
|
48928
|
+
|
|
48929
|
+
callback(TEST_BLOCK_TRADING_DATA);
|
|
48930
|
+
}
|
|
48931
|
+
|
|
48932
|
+
HQData.TradeDetail_RequestData=function(data,callback)
|
|
48933
|
+
{
|
|
48934
|
+
data.PreventDefault=true;
|
|
48935
|
+
var symbol=data.Request.Symbol;
|
|
48936
|
+
|
|
48937
|
+
callback(TEST_TRADE_DETAL_DATA);
|
|
48938
|
+
}
|
package/src/jscommon/umychart.js
CHANGED
|
@@ -33555,49 +33555,37 @@ function ChartMACD()
|
|
|
33555
33555
|
return this.PtInBar(x, y, { BarWidth:barWidth })
|
|
33556
33556
|
}
|
|
33557
33557
|
|
|
33558
|
-
this.
|
|
33558
|
+
this.DrawBars=function(lineWidth, bUpBar)
|
|
33559
33559
|
{
|
|
33560
|
-
if (!this.IsShow || this.ChartFrame.IsMinSize || !this.IsVisible) return;
|
|
33561
|
-
if (this.IsShowIndexTitleOnly()) return;
|
|
33562
|
-
if (this.IsHideScriptIndex()) return;
|
|
33563
|
-
|
|
33564
|
-
if (this.NotSupportMessage)
|
|
33565
|
-
{
|
|
33566
|
-
this.DrawNotSupportmessage();
|
|
33567
|
-
return;
|
|
33568
|
-
}
|
|
33569
|
-
|
|
33570
|
-
if (this.ChartFrame.IsHScreen===true)
|
|
33571
|
-
{
|
|
33572
|
-
this.HScreenDraw();
|
|
33573
|
-
return;
|
|
33574
|
-
}
|
|
33575
|
-
|
|
33576
33560
|
var isMinute=this.IsMinuteFrame();
|
|
33561
|
+
var border=this.ChartBorder.GetBorder();
|
|
33577
33562
|
var dataWidth=this.ChartFrame.DataWidth;
|
|
33578
33563
|
var distanceWidth=this.ChartFrame.DistanceWidth;
|
|
33579
|
-
var
|
|
33564
|
+
var xPointCount=this.ChartFrame.XPointCount;
|
|
33580
33565
|
var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
|
|
33566
|
+
|
|
33581
33567
|
var chartright=border.RightEx;
|
|
33582
|
-
var xPointCount=this.ChartFrame.XPointCount;
|
|
33583
33568
|
var lockRect=this.GetLockRect();
|
|
33584
33569
|
if (lockRect) chartright=lockRect.Left;
|
|
33585
33570
|
|
|
33586
|
-
|
|
33587
|
-
|
|
33571
|
+
if (bUpBar) this.Canvas.strokeStyle=this.UpColor;
|
|
33572
|
+
else this.Canvas.strokeStyle=this.DownColor;
|
|
33573
|
+
|
|
33588
33574
|
var yBottom=this.ChartFrame.GetYFromData(0);
|
|
33589
|
-
|
|
33590
|
-
var
|
|
33591
|
-
if (this.LineWidth==50) lineWidth=dataWidth;
|
|
33592
|
-
else if (lineWidth>dataWidth) lineWidth=dataWidth;
|
|
33593
|
-
|
|
33594
|
-
var backupLineWidth=this.Canvas.lineWidth;
|
|
33595
|
-
this.Canvas.lineWidth=lineWidth;
|
|
33575
|
+
this.Canvas.beginPath();
|
|
33576
|
+
var drawCount=0;
|
|
33596
33577
|
for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j,xOffset+=(dataWidth+distanceWidth))
|
|
33597
|
-
//for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j)
|
|
33598
33578
|
{
|
|
33599
33579
|
var value=this.Data.Data[i];
|
|
33600
33580
|
if (value==null) continue;
|
|
33581
|
+
if (bUpBar)
|
|
33582
|
+
{
|
|
33583
|
+
if (value<0) continue;
|
|
33584
|
+
}
|
|
33585
|
+
else
|
|
33586
|
+
{
|
|
33587
|
+
if (value>=0) continue;
|
|
33588
|
+
}
|
|
33601
33589
|
|
|
33602
33590
|
if (isMinute)
|
|
33603
33591
|
{
|
|
@@ -33610,21 +33598,49 @@ function ChartMACD()
|
|
|
33610
33598
|
if (right>chartright) break;
|
|
33611
33599
|
var x=left+(right-left)/2;
|
|
33612
33600
|
}
|
|
33613
|
-
var y=this.ChartFrame.GetYFromData(value);
|
|
33614
33601
|
|
|
33615
33602
|
if (x>chartright) break;
|
|
33616
33603
|
|
|
33604
|
+
var y=this.ChartFrame.GetYFromData(value);
|
|
33617
33605
|
var xFix=ToFixedPoint2(lineWidth, x); //毛边修正
|
|
33618
|
-
this.Canvas.beginPath();
|
|
33619
33606
|
this.Canvas.moveTo(xFix,yBottom);
|
|
33620
33607
|
this.Canvas.lineTo(xFix,y);
|
|
33608
|
+
++drawCount;
|
|
33609
|
+
}
|
|
33621
33610
|
|
|
33622
|
-
|
|
33623
|
-
|
|
33624
|
-
|
|
33625
|
-
|
|
33611
|
+
if (drawCount>0) this.Canvas.stroke();
|
|
33612
|
+
}
|
|
33613
|
+
|
|
33614
|
+
this.Draw=function()
|
|
33615
|
+
{
|
|
33616
|
+
if (!this.IsShow || this.ChartFrame.IsMinSize || !this.IsVisible) return;
|
|
33617
|
+
if (this.IsShowIndexTitleOnly()) return;
|
|
33618
|
+
if (this.IsHideScriptIndex()) return;
|
|
33619
|
+
|
|
33620
|
+
if (this.NotSupportMessage)
|
|
33621
|
+
{
|
|
33622
|
+
this.DrawNotSupportmessage();
|
|
33623
|
+
return;
|
|
33624
|
+
}
|
|
33625
|
+
|
|
33626
|
+
if (this.ChartFrame.IsHScreen===true)
|
|
33627
|
+
{
|
|
33628
|
+
this.HScreenDraw();
|
|
33629
|
+
return;
|
|
33626
33630
|
}
|
|
33627
33631
|
|
|
33632
|
+
var dataWidth=this.ChartFrame.DataWidth;
|
|
33633
|
+
var lineWidth=this.LineWidth*GetDevicePixelRatio();
|
|
33634
|
+
if (this.LineWidth==50) lineWidth=dataWidth;
|
|
33635
|
+
else if (lineWidth>dataWidth) lineWidth=dataWidth;
|
|
33636
|
+
|
|
33637
|
+
var backupLineWidth=this.Canvas.lineWidth;
|
|
33638
|
+
this.Canvas.lineWidth=lineWidth;
|
|
33639
|
+
|
|
33640
|
+
//上下分开画
|
|
33641
|
+
this.DrawBars(lineWidth, true);
|
|
33642
|
+
this.DrawBars(lineWidth, false);
|
|
33643
|
+
|
|
33628
33644
|
this.Canvas.lineWidth=backupLineWidth;
|
|
33629
33645
|
}
|
|
33630
33646
|
|
|
@@ -88562,7 +88578,7 @@ function MinuteCoordinateData()
|
|
|
88562
88578
|
{
|
|
88563
88579
|
Full: //完整模式
|
|
88564
88580
|
[
|
|
88565
|
-
[0, 0, "rgb(200,200,200)", "09:30"], //[0]=索引 [1]=线段类型 [2]=文字颜色(弃用) [3]=刻度文字 [4]=线段颜色 [5]=背景色
|
|
88581
|
+
[0, 0, "rgb(200,200,200)", "09:30"], //[0]=索引 [1]=线段类型(预留) [2]=文字颜色(弃用) [3]=刻度文字 [4]=线段颜色 [5]=背景色
|
|
88566
88582
|
[31, 0, "RGB(200,200,200)", "10:00"],
|
|
88567
88583
|
[61, 0, "RGB(200,200,200)", "10:30"],
|
|
88568
88584
|
[91, 0, "RGB(200,200,200)", "11:00"],
|