트레이닝 센터

데이터 분석 & 시각화

C1Chart:업종 데이터 분석(하)

상편에서 우리는 금융그래프와 데이터 통계를 포함하는 C1Chart의 그래프를 설명했습니다. 본문 하편에서는 주로 업종데이터분석의 등고선과 등고 지역을 설명합니다.

ComponentOne Chart for WinForms는 80여종의 2D와 3D 그래프유형을 포함합니다. 코드의 그래프설계장치 없이 유연하게 그래프요소를 확정할 수 있습니다. 최종 사용자가 조정 가능한 최상의 시각효과와 우수한 마우스 추적 능력 등을 갖추고 있습니다.

ComponentOne Chart for WinForms를 사용하여 데이터 분석 시스템을 업그레이드할 수 있습니다.


등고선과 등고지역


C1Chart3D컨트롤은 자동으로 등고선을 생성할 수 있고 데이터에 근거하여 구역을 구분합니다. 온도, 해발고도, 대기질량 등 전문적인 데이터를 표기하는 데 사용할 수 있습니다. C1Chart3D는 내장된 크로마토그램이나 자체정의로 각 지역에 색을 입혀줍니다. C1Chart3D는 각 구역 간 자동 색상 조절을 신속하고 원활하게 할 수 있습니다.

그 밖에 조정 기능을 강화하여 Chart의 마우스 회전, 리프팅, 이동 및 보관을 포함하는 내장된 조정 기능을 제공합니다.


C1Chart3D바인딩 데이터 : Chart3DDataSetGrid의 XML데이터 바인딩은 등고선 자동 생성에 사용됩니다. 구체적인 코드는 다음과 같습니다. :

Chart3DDataSetGrid grid = c1Chart3D1.ChartGroups.Group0.ChartData.SetGrid;
            IList rows = categorySales1.List;
            Chart3DAxis x = c1Chart3D1.ChartArea.AxisX;
            Chart3DAxis y = c1Chart3D1.ChartArea.AxisY;
            Chart3DAxis z = c1Chart3D1.ChartArea.AxisZ;
            grid.RowCount = rows.Count;
            grid.ColumnCount = 4;

            for (int i = 0; i < rows.Count; i++)
            {
                DataRowView view = rows[i] as DataRowView;
                DataRow r = view.Row;
                grid[0, i] = System.Convert.ToDouble(r[1]);
                grid[1, i] = System.Convert.ToDouble(r[2]);
                grid[2, i] = System.Convert.ToDouble(r[3]);
                grid[3, i] = System.Convert.ToDouble(r[4]);
                y.ValueLabels.Add(i, r[0].ToString());
            }

            x.ValueLabels.Add(0, "Q1");
            x.ValueLabels.Add(1, "Q2");
            x.ValueLabels.Add(2, "Q3");
            x.ValueLabels.Add(3, "Q4");
            x.AnnoMethod = AnnotationMethodEnum.ValueLabels;
            x.AnnoPosition = AnnoPositionEnum.Both;

            x.MajorGrid.IsOnXYPlane = true;
            x.MajorGrid.IsOnXZPlane = true;
            x.MajorGrid.Style.Color = SystemColors.ControlDarkDark;

            y.AnnoMethod = AnnotationMethodEnum.ValueLabels;
            y.AnnoRotated = true;
            y.AnnoPosition = AnnoPositionEnum.Both;

            y.MajorGrid.IsOnXYPlane = true;
            y.MajorGrid.IsOnYZPlane = true;
            y.MajorGrid.Style.Color = SystemColors.ControlDarkDark;

            z.AnnoFormat = FormatEnum.NumericManual;
            z.AnnoFormatString = "#,";
            z.Text = "$1,000's";
            z.UnitMajor = z.UnitMinor;

            z.MajorGrid.IsOnXZPlane = true;
            z.MajorGrid.IsOnYZPlane = true;
            z.MajorGrid.Style.Color = SystemColors.ControlDarkDark;

C1Chart3D의 줌 조정 : Chart3D의 Scal을 통해 줌 비율을 조정합니다. 코드는 다음과 같습니다. :


	//Adjust zoom level
            c1Chart3D1.ChartArea.View.ViewportScale = 1.4f;
            c1Chart3D1.ChartArea.View.ViewportHorizontalShift = .15f;
            c1Chart3D1.ChartArea.View.ViewportVerticalShift = -.17f;

C1Chart3D등고선의 조정: 설정을 통해 C1Chart3D는 마우스 회전, 리프팅, 이동 및 보관을 실현할 수 있습니다. Demo에서는 마우스로 드래그하거나 TrackBar를 조정하여 회전할 수 있습니다. 코드는 아래와 같습니다. :

private System.Windows.Forms.TrackBar trkYAxis; 
private void trkXAxis_Scroll(object sender, EventArgs e) 
{ 
c1Chart3D1.ChartArea.View.RotationX = trkXAxis.Value; 
} 
private void trkYAxis_Scroll(object sender, EventArgs e) 
{ 
c1Chart3D1.ChartArea.View.RotationY = trkYAxis.Value; 
} 
private void trkZAxis_Scroll(object sender, EventArgs e) 
{ 
c1Chart3D1.ChartArea.View.RotationZ = trkZAxis.Value; 
}

상기 조작을 통해 자동으로 생성된 등고선 그래프는 다음과 같습니다. 온도, 해발, 대기질량 영역 등의 전문적인 데이터를 표기하는데 사용됩니다.


본문 Demo의 소스코드는 다음과 같습니다. :


샘플 다운로드



한국 그레이프시티 공식카페에서 기술지원을 받으실 수 있습니다.
이메일을 통해서도 기술지원을 받으실 수 있습니다.