Home 소개       다운로드       온라인 설명서      주식/코인 차트    Q & A     Blog    

[샘플] 시간관리 그래프 - 안급한일, 급한일, 중요한일, 안중요한일 계획 차트







이번에는 좀 재미있는 차트를 한 번 만들어 봤습니다. 시간 관리, 일정 고나리를 할 때 중요한일과 급한일 순으로 정리를 하여 보다 효율적으로 관리할 수 있는 차트가 있어서 히포차트로 한 번 따라 그려보았습니다.

여기에 나온 내용은
- 풍선 도움말
- 영역마커
- 수동축
- 축 영역 배경색 다루기

등입니다.




[샘플] 시간관리 그래프 - 안급한일, 급한일, 중요한일, 안중요한일 계획 차트  


C#
 
SeriesList sList = new SeriesList();
sList.ChartType = ChartType.Scatter;
sList.AxisFactor.XAxis.DataType = AxisDataType.Number;
sList.AxisFactor.YAxis.SetAxisStep(-100, 100, 25);
sList.AxisFactor.XAxis.SetAxisStep(-100, 100, 25);
sList.AxisFactor.BackColor = Color.FromArgb(100, Color.Pink);

sList.AxisFactor.YAxis.TitleLabel.Text = "<--- 안 급한일 급한일 --->";
sList.AxisFactor.YAxis.IsAxisVerticalRotate = true;

sList.AxisFactor.XAxis.TitleLabel.Text = "<--- 안 중요한일 중요한일 --->";

// 급한일
AxisArea ar = new AxisArea("", 0, 100);
ar.BackColor = Color.FromArgb(100, Color.SteelBlue);
sList.AxisFactor.YAxis.Areas.Add(ar);

// 급한일
AxisArea ar2 = new AxisArea("", 0, 100);
ar2.BackColor = Color.FromArgb(100, Color.YellowGreen);
sList.AxisFactor.XAxis.Areas.Add(ar2);

Random r = new Random();
for(int i = 0; i < 4; i++)
{
Series sr = new Series();

// 중요할수록 동그라미 크게
if (i == 0) // 급한데 안중요한일
{
sr.Points.Width = 20;
sr.SeriesColor = new Palette().DefaultColor2;
}
if (i == 1) // 급하고 중요한일
{
sr.Points.Width = 30;
sr.SeriesColor = new Palette().DefaultColor1;
}
if (i == 2) // 안급하고 안중요한일
{
sr.Points.Width = 10;
sr.SeriesColor = new Palette().DefaultColor4;
}
if (i == 3) // 중요하지만 안급한일
{
sr.Points.Width = 20;
sr.SeriesColor = new Palette().DefaultColor3;
}

for(int x = 0; x < 5; x++)
{
SeriesItem item = new SeriesItem();

item.Balloon = new Balloon();
item.Balloon.Label.Text = "To DO List " + (i + x).ToString();
item.Balloon.HeightType = HeightType.Bottom;
item.Balloon.IsShadow = false;
item.Balloon.BalloonType = BalloonType.Rectangle;
item.Balloon.BackColor = Color.White;

if (i == 0 || i == 1) // 급한일
{
item.YValue = r.Next(0, 100);
}
if (i == 2 || i == 3) // 안급한일
{
item.YValue = r.Next(-100, 0);
item.Balloon.HeightType = HeightType.Top;
}

if (i == 0 || i == 2) // 안중요한일
{
item.XValue = r.Next(-100, 0);
item.Balloon.TextLocation = StringAlignment.Far;
}
if (i == 1 || i == 3) // 중요한일
{
item.XValue = r.Next(0, 100);
}

sr.items.Add(item);
}
sList.SeriesCollection.Add(sr);
}

this.hHippoChart1.SeriesListDictionary.Add(sList);
this.hHippoChart1.DrawChart();


VB
 
Dim sList As New. SeriesList()
sList.ChartType = ChartType.Scatter
sList.AxisFactor.XAxis.DataType = AxisDataType.Number
sList.AxisFactor.YAxis.SetAxisStep(-100, 100, 25)
sList.AxisFactor.XAxis.SetAxisStep(-100, 100, 25)
sList.AxisFactor.BackColor = Color.FromArgb(100, Color.Pink)

sList.AxisFactor.YAxis.TitleLabel.Text = "<--- 안 급한일 급한일 --->"
sList.AxisFactor.YAxis.IsAxisVerticalRotate = True

sList.AxisFactor.XAxis.TitleLabel.Text = "<--- 안 중요한일 중요한일 --->"

` 급한일
Dim ar As New. AxisArea("", 0, 100)
ar.BackColor = Color.FromArgb(100, Color.SteelBlue)
sList.AxisFactor.YAxis.Areas.Add(ar)

` 급한일
Dim ar2 As New. AxisArea("", 0, 100)
ar2.BackColor = Color.FromArgb(100, Color.YellowGreen)
sList.AxisFactor.XAxis.Areas.Add(ar2)

Dim r As New. Random()
For i As Integer = 0 To 3
Dim sr As New. Series()

` 중요할수록 동그라미 크게
If i = 0 Then
` 급한데 안중요한일
sr.Points.Width = 20
sr.SeriesColor = New Palette().DefaultColor2
End If
If i = 1 Then
` 급하고 중요한일
sr.Points.Width = 30
sr.SeriesColor = New Palette().DefaultColor1
End If
If i = 2 Then
` 안급하고 안중요한일
sr.Points.Width = 10
sr.SeriesColor = New Palette().DefaultColor4
End If
If i = 3 Then
` 중요하지만 안급한일
sr.Points.Width = 20
sr.SeriesColor = New Palette().DefaultColor3
End If

For x As Integer = 0 To 4
Dim item As New. SeriesItem()

item.Balloon = New Balloon()
item.Balloon.Label.Text = "To DO List " + (i + x).ToString()
item.Balloon.HeightType = HeightType.Bottom
item.Balloon.IsShadow = False
item.Balloon.BalloonType = BalloonType.Rectangle
item.Balloon.BackColor = Color.White

If i = 0 OrElse i = 1 Then
` 급한일
item.YValue = r.[Next](0, 100)
End If
If i = 2 OrElse i = 3 Then
` 안급한일
item.YValue = r.[Next](-100, 0)
item.Balloon.HeightType = HeightType.Top
End If

If i = 0 OrElse i = 2 Then
` 안중요한일
item.XValue = r.[Next](-100, 0)
item.Balloon.TextLocation = StringAlignment.Far
End If
If i = 1 OrElse i = 3 Then
` 중요한일
item.XValue = r.[Next](0, 100)
End If

sr.items.Add(item)
Next
sList.SeriesCollection.Add(sr)
Next

Me.hHippoChart1.SeriesListDictionary.Add(sList)
Me.hHippoChart1.DrawChart()


※ 히포차트 샘플 코드는 버전별로 상이한 결과를 나타낼 수 있습니다.

이 코드 관련 문의 사항은 페이스북 리플을 달아주시거나 아래 이메일로 이 페이지 주소와 함께 문의주세요.

helpdesk@hippochart.com





Copyright © 2009-2018 HippoChart. Inc.  All Rights Reserved.