提交 bd1e970f 编写于 作者: HQChart's avatar HQChart

ver 7219

7219 DynamicKLineTitlePainting 修正获取鼠标所在K线位置时多减了0.5
7218 GetMinutePeriodData() 修正周期计算错误
上级 ef1f39ba
...@@ -141,6 +141,7 @@ function JSChart(divElement) ...@@ -141,6 +141,7 @@ function JSChart(divElement)
} }
if (option.StepPixel>0) chart.StepPixel=option.StepPixel; if (option.StepPixel>0) chart.StepPixel=option.StepPixel;
if (option.IsApiPeriod==true) chart.IsApiPeriod=option.IsApiPeriod;
if (!option.Windows || option.Windows.length<=0) return null; if (!option.Windows || option.Windows.length<=0) return null;
...@@ -5623,11 +5624,15 @@ function ChartData() ...@@ -5623,11 +5624,15 @@ function ChartData()
++j; ++j;
continue; continue;
} }
if ( (preTime!=null && minData.Time == 925 && preTime!=924) || (preTime!=null && minData.Time == 930 && preTime!=929)) //9:25, 9:30 不连续就不算个数 if (minData.Time==925 && (preTime==null || preTime!=924)) //9:25, 9:30 不连续就不算个数
{ {
} }
else if (preTime!=null && minData.Time == 1300 && preTime!=1259 ) //1点的数据 如果不是连续的 就不算个数 else if (minData.Time == 930 && (preTime==null || preTime!=929) )
{
}
else if (minData.Time == 1300 && (preTime==null || preTime!=1259) ) //1点的数据 如果不是连续的 就不算个数
{ {
} }
...@@ -15778,7 +15783,7 @@ function DynamicKLineTitlePainting() ...@@ -15778,7 +15783,7 @@ function DynamicKLineTitlePainting()
if (this.CursorIndex==null || !this.Data) return null; if (this.CursorIndex==null || !this.Data) return null;
if (this.Data.length<=0) return null; if (this.Data.length<=0) return null;
var index=Math.abs(this.CursorIndex-0.5); var index=this.CursorIndex;
index=parseInt(index.toFixed(0)); index=parseInt(index.toFixed(0));
var dataIndex=this.Data.DataOffset+index; var dataIndex=this.Data.DataOffset+index;
if (dataIndex>=this.Data.Data.length) dataIndex=this.Data.Data.length-1; if (dataIndex>=this.Data.Data.length) dataIndex=this.Data.Data.length-1;
...@@ -15911,7 +15916,7 @@ function DynamicKLineTitlePainting() ...@@ -15911,7 +15916,7 @@ function DynamicKLineTitlePainting()
this.Canvas.font=this.Font; this.Canvas.font=this.Font;
this.SpaceWidth = this.Canvas.measureText('0').width; this.SpaceWidth = this.Canvas.measureText('0').width;
var index=Math.abs(this.CursorIndex-0.5); var index=this.CursorIndex;
index=parseInt(index.toFixed(0)); index=parseInt(index.toFixed(0));
var dataIndex=this.Data.DataOffset+index; var dataIndex=this.Data.DataOffset+index;
if (dataIndex>=this.Data.Data.length) dataIndex=this.Data.Data.length-1; if (dataIndex>=this.Data.Data.length) dataIndex=this.Data.Data.length-1;
...@@ -20615,6 +20620,7 @@ function KLineChartContainer(uielement) ...@@ -20615,6 +20620,7 @@ function KLineChartContainer(uielement)
this.Symbol; this.Symbol;
this.Name; this.Name;
this.Period=0; //周期 0=日线 1=周线 2=月线 3=年线 4=1分钟 5=5分钟 6=15分钟 7=30分钟 8=60分钟 9=季线 10=分笔线 this.Period=0; //周期 0=日线 1=周线 2=月线 3=年线 4=1分钟 5=5分钟 6=15分钟 7=30分钟 8=60分钟 9=季线 10=分笔线
this.IsApiPeriod=false; //使用API计算周期
this.Right=0; //复权 0 不复权 1 前复权 2 后复权 this.Right=0; //复权 0 不复权 1 前复权 2 后复权
this.SourceData; //原始的历史数据 this.SourceData; //原始的历史数据
this.MaxReqeustDataCount=3000; //数据个数 this.MaxReqeustDataCount=3000; //数据个数
...@@ -21276,13 +21282,13 @@ function KLineChartContainer(uielement) ...@@ -21276,13 +21282,13 @@ function KLineChartContainer(uielement)
bindData.DataType=0; bindData.DataType=0;
bindData.Symbol=data.symbol; bindData.Symbol=data.symbol;
if (bindData.Right>0) //复权 if (bindData.Right>0 && !this.IsApiPeriod) //复权
{ {
var rightData=bindData.GetRightDate(bindData.Right); var rightData=bindData.GetRightDate(bindData.Right);
bindData.Data=rightData; bindData.Data=rightData;
} }
if (ChartData.IsDayPeriod(bindData.Period,false)) //周期数据 if (ChartData.IsDayPeriod(bindData.Period,false) && !this.IsApiPeriod) //周期数据
{ {
var periodData=bindData.GetPeriodData(bindData.Period); var periodData=bindData.GetPeriodData(bindData.Period);
bindData.Data=periodData; bindData.Data=periodData;
...@@ -21544,7 +21550,7 @@ function KLineChartContainer(uielement) ...@@ -21544,7 +21550,7 @@ function KLineChartContainer(uielement)
bindData.DataType=1; bindData.DataType=1;
bindData.Symbol=data.symbol; bindData.Symbol=data.symbol;
if (ChartData.IsMinutePeriod(bindData.Period,false)) //周期数据 if (ChartData.IsMinutePeriod(bindData.Period,false) && !this.IsApiPeriod) //周期数据
{ {
var periodData=sourceData.GetPeriodData(bindData.Period); var periodData=sourceData.GetPeriodData(bindData.Period);
bindData.Data=periodData; bindData.Data=periodData;
...@@ -22292,7 +22298,7 @@ function KLineChartContainer(uielement) ...@@ -22292,7 +22298,7 @@ function KLineChartContainer(uielement)
this.Period=period; this.Period=period;
this.ReloadChartDrawPicture(); //切换周期了 清空画图工具 this.ReloadChartDrawPicture(); //切换周期了 清空画图工具
if (isDataTypeChange==false) if (isDataTypeChange==false && !this.IsApiPeriod)
{ {
this.Update(); this.Update();
return; return;
...@@ -141,6 +141,7 @@ function JSChart(divElement) ...@@ -141,6 +141,7 @@ function JSChart(divElement)
} }
if (option.StepPixel>0) chart.StepPixel=option.StepPixel; if (option.StepPixel>0) chart.StepPixel=option.StepPixel;
if (option.IsApiPeriod==true) chart.IsApiPeriod=option.IsApiPeriod;
if (!option.Windows || option.Windows.length<=0) return null; if (!option.Windows || option.Windows.length<=0) return null;
...@@ -5623,11 +5624,15 @@ function ChartData() ...@@ -5623,11 +5624,15 @@ function ChartData()
++j; ++j;
continue; continue;
} }
if ( (preTime!=null && minData.Time == 925 && preTime!=924) || (preTime!=null && minData.Time == 930 && preTime!=929)) //9:25, 9:30 不连续就不算个数 if (minData.Time==925 && (preTime==null || preTime!=924)) //9:25, 9:30 不连续就不算个数
{ {
} }
else if (preTime!=null && minData.Time == 1300 && preTime!=1259 ) //1点的数据 如果不是连续的 就不算个数 else if (minData.Time == 930 && (preTime==null || preTime!=929) )
{
}
else if (minData.Time == 1300 && (preTime==null || preTime!=1259) ) //1点的数据 如果不是连续的 就不算个数
{ {
} }
...@@ -15778,7 +15783,7 @@ function DynamicKLineTitlePainting() ...@@ -15778,7 +15783,7 @@ function DynamicKLineTitlePainting()
if (this.CursorIndex==null || !this.Data) return null; if (this.CursorIndex==null || !this.Data) return null;
if (this.Data.length<=0) return null; if (this.Data.length<=0) return null;
var index=Math.abs(this.CursorIndex-0.5); var index=this.CursorIndex;
index=parseInt(index.toFixed(0)); index=parseInt(index.toFixed(0));
var dataIndex=this.Data.DataOffset+index; var dataIndex=this.Data.DataOffset+index;
if (dataIndex>=this.Data.Data.length) dataIndex=this.Data.Data.length-1; if (dataIndex>=this.Data.Data.length) dataIndex=this.Data.Data.length-1;
...@@ -15911,7 +15916,7 @@ function DynamicKLineTitlePainting() ...@@ -15911,7 +15916,7 @@ function DynamicKLineTitlePainting()
this.Canvas.font=this.Font; this.Canvas.font=this.Font;
this.SpaceWidth = this.Canvas.measureText('0').width; this.SpaceWidth = this.Canvas.measureText('0').width;
var index=Math.abs(this.CursorIndex-0.5); var index=this.CursorIndex;
index=parseInt(index.toFixed(0)); index=parseInt(index.toFixed(0));
var dataIndex=this.Data.DataOffset+index; var dataIndex=this.Data.DataOffset+index;
if (dataIndex>=this.Data.Data.length) dataIndex=this.Data.Data.length-1; if (dataIndex>=this.Data.Data.length) dataIndex=this.Data.Data.length-1;
...@@ -20615,6 +20620,7 @@ function KLineChartContainer(uielement) ...@@ -20615,6 +20620,7 @@ function KLineChartContainer(uielement)
this.Symbol; this.Symbol;
this.Name; this.Name;
this.Period=0; //周期 0=日线 1=周线 2=月线 3=年线 4=1分钟 5=5分钟 6=15分钟 7=30分钟 8=60分钟 9=季线 10=分笔线 this.Period=0; //周期 0=日线 1=周线 2=月线 3=年线 4=1分钟 5=5分钟 6=15分钟 7=30分钟 8=60分钟 9=季线 10=分笔线
this.IsApiPeriod=false; //使用API计算周期
this.Right=0; //复权 0 不复权 1 前复权 2 后复权 this.Right=0; //复权 0 不复权 1 前复权 2 后复权
this.SourceData; //原始的历史数据 this.SourceData; //原始的历史数据
this.MaxReqeustDataCount=3000; //数据个数 this.MaxReqeustDataCount=3000; //数据个数
...@@ -21276,13 +21282,13 @@ function KLineChartContainer(uielement) ...@@ -21276,13 +21282,13 @@ function KLineChartContainer(uielement)
bindData.DataType=0; bindData.DataType=0;
bindData.Symbol=data.symbol; bindData.Symbol=data.symbol;
if (bindData.Right>0) //复权 if (bindData.Right>0 && !this.IsApiPeriod) //复权
{ {
var rightData=bindData.GetRightDate(bindData.Right); var rightData=bindData.GetRightDate(bindData.Right);
bindData.Data=rightData; bindData.Data=rightData;
} }
if (ChartData.IsDayPeriod(bindData.Period,false)) //周期数据 if (ChartData.IsDayPeriod(bindData.Period,false) && !this.IsApiPeriod) //周期数据
{ {
var periodData=bindData.GetPeriodData(bindData.Period); var periodData=bindData.GetPeriodData(bindData.Period);
bindData.Data=periodData; bindData.Data=periodData;
...@@ -21544,7 +21550,7 @@ function KLineChartContainer(uielement) ...@@ -21544,7 +21550,7 @@ function KLineChartContainer(uielement)
bindData.DataType=1; bindData.DataType=1;
bindData.Symbol=data.symbol; bindData.Symbol=data.symbol;
if (ChartData.IsMinutePeriod(bindData.Period,false)) //周期数据 if (ChartData.IsMinutePeriod(bindData.Period,false) && !this.IsApiPeriod) //周期数据
{ {
var periodData=sourceData.GetPeriodData(bindData.Period); var periodData=sourceData.GetPeriodData(bindData.Period);
bindData.Data=periodData; bindData.Data=periodData;
...@@ -22292,7 +22298,7 @@ function KLineChartContainer(uielement) ...@@ -22292,7 +22298,7 @@ function KLineChartContainer(uielement)
this.Period=period; this.Period=period;
this.ReloadChartDrawPicture(); //切换周期了 清空画图工具 this.ReloadChartDrawPicture(); //切换周期了 清空画图工具
if (isDataTypeChange==false) if (isDataTypeChange==false && !this.IsApiPeriod)
{ {
this.Update(); this.Update();
return; return;
...@@ -141,6 +141,7 @@ function JSChart(divElement) ...@@ -141,6 +141,7 @@ function JSChart(divElement)
} }
if (option.StepPixel>0) chart.StepPixel=option.StepPixel; if (option.StepPixel>0) chart.StepPixel=option.StepPixel;
if (option.IsApiPeriod==true) chart.IsApiPeriod=option.IsApiPeriod;
if (!option.Windows || option.Windows.length<=0) return null; if (!option.Windows || option.Windows.length<=0) return null;
...@@ -5623,11 +5624,15 @@ function ChartData() ...@@ -5623,11 +5624,15 @@ function ChartData()
++j; ++j;
continue; continue;
} }
if ( (preTime!=null && minData.Time == 925 && preTime!=924) || (preTime!=null && minData.Time == 930 && preTime!=929)) //9:25, 9:30 不连续就不算个数 if (minData.Time==925 && (preTime==null || preTime!=924)) //9:25, 9:30 不连续就不算个数
{ {
} }
else if (preTime!=null && minData.Time == 1300 && preTime!=1259 ) //1点的数据 如果不是连续的 就不算个数 else if (minData.Time == 930 && (preTime==null || preTime!=929) )
{
}
else if (minData.Time == 1300 && (preTime==null || preTime!=1259) ) //1点的数据 如果不是连续的 就不算个数
{ {
} }
...@@ -15778,7 +15783,7 @@ function DynamicKLineTitlePainting() ...@@ -15778,7 +15783,7 @@ function DynamicKLineTitlePainting()
if (this.CursorIndex==null || !this.Data) return null; if (this.CursorIndex==null || !this.Data) return null;
if (this.Data.length<=0) return null; if (this.Data.length<=0) return null;
var index=Math.abs(this.CursorIndex-0.5); var index=this.CursorIndex;
index=parseInt(index.toFixed(0)); index=parseInt(index.toFixed(0));
var dataIndex=this.Data.DataOffset+index; var dataIndex=this.Data.DataOffset+index;
if (dataIndex>=this.Data.Data.length) dataIndex=this.Data.Data.length-1; if (dataIndex>=this.Data.Data.length) dataIndex=this.Data.Data.length-1;
...@@ -15911,7 +15916,7 @@ function DynamicKLineTitlePainting() ...@@ -15911,7 +15916,7 @@ function DynamicKLineTitlePainting()
this.Canvas.font=this.Font; this.Canvas.font=this.Font;
this.SpaceWidth = this.Canvas.measureText('0').width; this.SpaceWidth = this.Canvas.measureText('0').width;
var index=Math.abs(this.CursorIndex-0.5); var index=this.CursorIndex;
index=parseInt(index.toFixed(0)); index=parseInt(index.toFixed(0));
var dataIndex=this.Data.DataOffset+index; var dataIndex=this.Data.DataOffset+index;
if (dataIndex>=this.Data.Data.length) dataIndex=this.Data.Data.length-1; if (dataIndex>=this.Data.Data.length) dataIndex=this.Data.Data.length-1;
...@@ -20615,6 +20620,7 @@ function KLineChartContainer(uielement) ...@@ -20615,6 +20620,7 @@ function KLineChartContainer(uielement)
this.Symbol; this.Symbol;
this.Name; this.Name;
this.Period=0; //周期 0=日线 1=周线 2=月线 3=年线 4=1分钟 5=5分钟 6=15分钟 7=30分钟 8=60分钟 9=季线 10=分笔线 this.Period=0; //周期 0=日线 1=周线 2=月线 3=年线 4=1分钟 5=5分钟 6=15分钟 7=30分钟 8=60分钟 9=季线 10=分笔线
this.IsApiPeriod=false; //使用API计算周期
this.Right=0; //复权 0 不复权 1 前复权 2 后复权 this.Right=0; //复权 0 不复权 1 前复权 2 后复权
this.SourceData; //原始的历史数据 this.SourceData; //原始的历史数据
this.MaxReqeustDataCount=3000; //数据个数 this.MaxReqeustDataCount=3000; //数据个数
...@@ -21276,13 +21282,13 @@ function KLineChartContainer(uielement) ...@@ -21276,13 +21282,13 @@ function KLineChartContainer(uielement)
bindData.DataType=0; bindData.DataType=0;
bindData.Symbol=data.symbol; bindData.Symbol=data.symbol;
if (bindData.Right>0) //复权 if (bindData.Right>0 && !this.IsApiPeriod) //复权
{ {
var rightData=bindData.GetRightDate(bindData.Right); var rightData=bindData.GetRightDate(bindData.Right);
bindData.Data=rightData; bindData.Data=rightData;
} }
if (ChartData.IsDayPeriod(bindData.Period,false)) //周期数据 if (ChartData.IsDayPeriod(bindData.Period,false) && !this.IsApiPeriod) //周期数据
{ {
var periodData=bindData.GetPeriodData(bindData.Period); var periodData=bindData.GetPeriodData(bindData.Period);
bindData.Data=periodData; bindData.Data=periodData;
...@@ -21544,7 +21550,7 @@ function KLineChartContainer(uielement) ...@@ -21544,7 +21550,7 @@ function KLineChartContainer(uielement)
bindData.DataType=1; bindData.DataType=1;
bindData.Symbol=data.symbol; bindData.Symbol=data.symbol;
if (ChartData.IsMinutePeriod(bindData.Period,false)) //周期数据 if (ChartData.IsMinutePeriod(bindData.Period,false) && !this.IsApiPeriod) //周期数据
{ {
var periodData=sourceData.GetPeriodData(bindData.Period); var periodData=sourceData.GetPeriodData(bindData.Period);
bindData.Data=periodData; bindData.Data=periodData;
...@@ -22292,7 +22298,7 @@ function KLineChartContainer(uielement) ...@@ -22292,7 +22298,7 @@ function KLineChartContainer(uielement)
this.Period=period; this.Period=period;
this.ReloadChartDrawPicture(); //切换周期了 清空画图工具 this.ReloadChartDrawPicture(); //切换周期了 清空画图工具
if (isDataTypeChange==false) if (isDataTypeChange==false && !this.IsApiPeriod)
{ {
this.Update(); this.Update();
return; return;
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册