2013-05-12 1 views
0

는 제가 C#을 내가 선을 오버랩하는 때문에하지 축 아래 차트 아래의 x 축 범례를 설정하는 방법Telerik HTML 5 차트 ASP.net

  1. 를 사용하여 두 가지를 설정할 차트를 다음습니까?
  2. "{0} 감정 - {1} 볼륨"과 같이 툴팁이 나타나지 않습니다.

.

private void FillChart(IEnumerable<EntitySearchResponse> data) 
    { 
     SentimentChart.ChartTitle.Text = "Sentemants Per day"; 

     SentimentChart.PlotArea.YAxis.TitleAppearance.Text = "Sentimants %"; 


     SentimentChart.PlotArea.XAxis.LabelsAppearance.RotationAngle = 90; 
     SentimentChart.PlotArea.XAxis.Step = 10; 
     SentimentChart.PlotArea.XAxis.Items.Clear(); 

     foreach (var date in data.Select(x => x.Date).Distinct()) 
     { 
      var axisItem = new AxisItem(date.ToString("ddd dd")); 
      SentimentChart.PlotArea.XAxis.Items.Add(axisItem); 
     } 

     SentimentChart.DataSource = data; 

     SentimentChart.PlotArea.Series.Clear(); 

     foreach (var entityName in data.Select(x => x.EntityName).Distinct()) 
     { 
      var series = new ColumnSeries(); 
      series.LabelsAppearance.DataFormatString = "{0} items"; 
      series.TooltipsAppearance.DataFormatString = "{0} {2} items"; 
      series.Name = entityName; 

      var items = data.Where(x => x.EntityName == entityName).ToList(); 
      foreach (var entitySearchResponse in items) 
      { 
       var seriesItem = new SeriesItem(entitySearchResponse.Sentiment); 
       seriesItem.TooltipValue = string.Format("{0} Sentiment - {1} Volume", entitySearchResponse.Sentiment, 
                 entitySearchResponse.Volume); 
       series.Items.Add(seriesItem); 
      } 
      SentimentChart.PlotArea.Series.Add(series); 
     } 

    } 

enter image description here

답변

0

나는 x 축 범례가 차트의 x 축 레이블을 의미하는 것으로 생각한다. 그 경우 XAxis의 LabelsAppearance 요소에 의해 노출 된 TextStyle 속성이 있으므로이 레이블에 여백/패딩을 설정할 수 있습니다. 이 숙박 시설에 대한 자세한 정보는 here을 참조하십시오.

그러나이 속성을 설정하면 차트의 플롯 영역이 줄어들어 설정된 차트 크기에 맞출 수 있습니다. 따라서 차트의 너비/높이도 수정해야합니다.

툴팁의 모양과 관련하여 개별 SeriesItem에 대한 툴팁을 설정할 수 없습니다. 예외는 해당 ToolTipValue 속성을 노출하는 BubbleSeries입니다. 제가 제안 할 수있는 것은 차트의 ClientTemplate 기능을 사용하는 것입니다. 그러나이 기능을 사용하려면 차트를 데이터 바인딩해야합니다. 따라서 차트를 데이터 소스에 직접 바인딩하거나 현재 논리를 다시 작성하여 데이터 바인딩 할 수있는 데이터 소스를 만들 수 있습니다. 유용하게 사용할 수있는이 demos.telerik.com/aspnet-ajax/htmlchart/examples/functionality/clienttemplates/defaultcs.aspx 온라인 데모와 www.telerik.com/help/aspnet-ajax/htmlchart-client-templates-for- ClientTemplates 사용과 관련된 tooltips-and-labels.html 도움말