2013-08-01 4 views
0

MSChart Toolip의 성능 향상?MSChart Toolip의 성능 향상?

우리는 ASP.net 3.5 웹 응용 프로그램에의 MSChart를 사용 가능 툴팁에서 상당한 속도 저하를 알아 차리지 있습니다. 차트 그리기의 성능이 매우 느립니다. 그래프를 그리는 데 큰 데이터 세트를 사용하고 있기 때문에 차트 출력은 JPEG이며 총 500 개가 넘는 데이터 포인트를 포함합니다.

  chart.DataSource = dv; 
      chart.Series.Invalidate(); 
      chart.Series.SuspendUpdates(); 

      chart.Series["Series1"].XValueMember = "Time_Value"; 
      chart.Series["Series1"].YValueMembers = "Total1"; 
      chart.Series["Series2"].XValueMember = "Time_Value"; 
      chart.Series["Series2"].YValueMembers = "Total_thru"; 
      chart.Series["Series3"].XValueMember = "Time_Value"; 
      chart.Series["Series3"].YValueMembers = "Total2"; 
      chart.Series["Series4"].XValueMember = "Time_Value"; 
      chart.Series["Series4"].YValueMembers = "Total2_thruput"; 
      chart.Series["Series5"].XValueMember = "Time_Value"; 
      chart.Series["Series5"].YValueMembers = "BAWA_Total"; 
      chart.Series["Series5"].LegendText = "Count"; 
      chart.Series["Series5"].IsVisibleInLegend = true; 
      chart.DataBind(); 

      chart.Series["Series2"].LegendText = "Throughput1"; 
      chart.Series["Series2"].IsVisibleInLegend = true; 
      chart.Series["Series1"].LegendText = "Count1"; 
      chart.Series["Series1"].IsVisibleInLegend = true; 
      chart.Series["Series3"].LegendText = "Count2"; 
      chart.Series["Series3"].IsVisibleInLegend = true; 
      chart.Series["Series4"].LegendText = "Throughput2"; 
      chart.Series["Series4"].IsVisibleInLegend = true; 

      chart.ChartAreas[0].AxisX.LabelStyle.Angle = -90; 
      chart.ChartAreas[0].AxisX.LabelStyle.Font = new System.Drawing.Font("Trebuchet MS", 6.00F, System.Drawing.FontStyle.Bold); 
      chart.ChartAreas[0].AxisX.Interval = 600; 
      chart.ChartAreas[0].AxisX.IsStartedFromZero = true; 
      chart.ChartAreas[0].AxisX.TitleFont = new System.Drawing.Font("Trebuchet MS", 10.00F, System.Drawing.FontStyle.Bold); 
      chart.ChartAreas[0].AxisY.TitleFont = new System.Drawing.Font("Trebuchet MS", 10.00F, System.Drawing.FontStyle.Bold); 
      chart.ChartAreas[0].AxisY2.TitleFont = new System.Drawing.Font("Trebuchet MS", 10.00F, System.Drawing.FontStyle.Bold); 

      chart.Legends[0].Docking = Docking.Bottom; 
      chart.Legends[0].IsDockedInsideChartArea = false; 
      chart.Legends[0].TableStyle = LegendTableStyle.Wide; 
      chart.Legends[0].Alignment = StringAlignment.Center; 
      chart.Series[0].ToolTip = "#VALY{d} (#VALX)"; 
      chart.Series[1].ToolTip = "#VALY{d} (#VALX)"; 
      chart.Series[2].ToolTip = "#VALY{d} (#VALX)"; 
      chart.Series[3].ToolTip = "#VALY{d} (#VALX)"; 
      chart.Series[4].ToolTip = "#VALY{d} (#VALX)"; 

답변

0

사용자는 도구 설명 코드를 볼 수 없습니다. ToolTip은 상수 문자열도 표시 할 수 있습니다. 툴팁에 DataPoint 값을 표시한다는 의미입니까? 이 시리즈는 chart.Series["Series5"].XValueMember = "Time_Value"; 무엇입니까? 해당 YValueMember가 설정되지 않았습니다. 질문 외에 명확하지 않다, 너 설명 할 수 있니?

+0

DB에서 값을 가져 와서 시리즈로 바인딩하고 툴팁에도 사용하고 있습니다. – Amirtha