2014-11-12 8 views
0

날짜 x 축을 가진 검도 차트로 작업하고 있습니다. 다른 날짜에 대해 여러 점이 있지만 x 축은 월별보기 만 표시합니다. 나는 매달에 해당하는 마지막 데이터 포인트를 표시하는 사용자 정의 집계 함수를 설정 한 예검도 차트의 툴팁에 집계 함수를 추가하십시오.

데이터 포인트입니다

2014년 1월 1일 - $ 1500 2014년 1월 3일 - $ 2000 2014년 1월 10일 - $ (75)

$ (75)

나는이 점의 각각에 관련된 일부 사용자 지정 값을 사용자 지정 도구 설명을 표시하려면이 점 위에 마우스를 올려 경우 - 그래프에 표시

는 2014년 1월입니다. 툴팁에 표시된 값이 비즈니스 로직에 의해 생성되고 있으므로 여기서 논의하는 것이 중요하지 않다고 생각합니다. 위에서 언급 한 값을 내가 보여주고 싶은 툴팁을 그런 말을하자 것은 :

2014년 1월 1일 - $ (100) 2014년 1월 3일 - $ (200) 2014년 1월 10일 -하지만 $ (300)

, 나는 집계 된 점 위에 마우스를 올려 때 이번 달 동안 툴팁에 'C'값이 표시 될 것으로 기대합니다 (이전 집계 함수 때문에). 그러나 표시된 값은 다음과 같습니다 2014년 1월

- '$ 100'

내 질문입니다. 내 검도 툴팁에 맞춤 집계 함수를 지정하는 방법이 있습니까?

차트에 대한 코드는 다음과 같습니다 내 집계 함수에

public class MyModel{ 
      public DateTime Date {get; set;} 
      public double ShownValue {get; set;} 
      public double ToolTipValue {get; set;} 
     } 

@(Html.Kendo().Chart(List<MyModel>) 
     .Name("myChart") 
     .DataSource(dataSource => dataSource     
      .Sort(s => s.Add(fc => fc.Date)) 
     )       
     .SeriesDefaults(seriesDefaults => 
      seriesDefaults.Line().Style(ChartLineStyle.Smooth) 
     ) 
     .Series(series => 
     { 
      series.Line(value => value.ShownValue, category => category.Date)      
       .Aggregate("selectLastPoint"); 
     }) 
     .CategoryAxis(axis => axis       
        .Labels(labels => labels.Rotation(0).Format("MMM 'yy")) 
        .Date()       
        .BaseUnit(ChartAxisBaseUnit.Months)           
        .Justify(false) 
     ) 
     .ValueAxis(axis => axis.Numeric() 
      .Labels(labels => labels.Format("{0:c}")) 
      ) 
     .Tooltip(t => t 
      .Visible(true) 
      .Format("{0:c}") 
      .Template("#= kendo.format('{0:C}',dataItem.TooltipValue) #") 
     )) 

코드는 다음과 같습니다

function selectLastPoint(values) { 
    return values[values.length - 1]; 
} 

나는 당신이 날 도울 수 있기를 바랍니다. 인사말, Luis.

답변

0

방금 ​​답변을 찾았습니다. 집계 함수에서 현재 점의 값만 반환합니다. 다음과 같이 전체 dataItem을 반환해야합니다.

function selectLastPoint(values, series, dataItems) { 
    return dataItems[dataItems.length - 1]; 
}