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

히포차트 4.3 - 조직도 차트 (Organization chart) 만들기







히포차트 4.3.1 이후 버전에 조직도 차트가 추가될 예정입니다.

(2016년 10월 현재 미추가)

회사, 기관 등의 조직을 동적으로 바인딩 하여 코드를 작성할 수 있는 조직도 차트는 이미지, 타이틀, 메모의 구성으로 이루어져 있으며 부모 관계와 단계를 설정함으로써 어떠한 모양으로도 그려질 수 있도록 유연하게 설계되었습니다.

현재는 커스텀 개발로만 추가가 가능합니다.




히포차트 4.3 - 조직도 차트 (Organization chart) 만들기  


C#
 
SeriesList sList = new SeriesList();
sList.ChartType = ChartType.Organization;

Random r = new Random();

Series sr = new Series();

for(int x = 0; x < 20; x++)
{
SeriesItem item = new SeriesItem();
item.Name = x.ToString();
item.YValue = x;

item.Element = new OrganizationElement();
item.Element.TitleForeColor = Color.White;
item.Element.ForeColor = Color.Black;

item.Element.IsAutoSize = true;

if (x == 0) // 보스
{
item.Element.Name = "이건이 대표이사";
item.Element.Memo = "회사 대표직을 역임하고 있습니다. 본사 창업자이며 6년간 대표이사직을 수행중이십니다. ";
item.Element.Position = "CEO";
item.Element.Step = 0;
item.Element.Type = OrganizationType.President;
item.Element.IsImageView = true;
item.Element.Picture = new Bitmap("c:\\ppp.jpg");

item.ItemColor = Color.Red;
}

if (x == 1 || x == 2 || x == 3 || x == 4 || x == 5)
{
item.Element.Type = OrganizationType.Group;
item.Element.Step = 1;
item.Element.Name = "개발 팀장 " + x.ToString();
item.Element.Memo = "차트 개발 팀장 ";
item.Element.Position = "Team Manager";
item.Element.Parent = 0;

if (x == 1)
{
item.Element.Type = OrganizationType.Inspection;
item.Element.Step = 1;
item.Element.Name = "감사실";
item.Element.Memo = "회장 직속 감사기구";
item.Element.Position = "Audit Team";
}

if (x == 1)
{
item.ItemColor = Color.YellowGreen; item.Element.Picture = new Bitmap("c:\\gggg.jpg");
}
if (x == 2)
{
item.ItemColor = Color.Navy; item.Element.Picture = new Bitmap("c:\\eee.jpg");
}
if (x == 3)
{
item.ItemColor = Color.Gray; item.Element.Picture = new Bitmap("c:\\ooo.jpg");
}
if (x == 5)
{
item.ItemColor = Color.Black;
}

item.Element.IsImageView = true;
}

if (x > 5)
{
item.Element.Name = "개발자 " + x.ToString();
item.Element.Memo = "차트 개발 실무 담당자 ";
item.Element.Position = "Developer";
item.Element.Step = 2;
item.Element.Parent = 2;

item.ItemColor = Color.Navy;
}

if (x > 7)
{
item.Element.Memo = "게임 개발자 담당자 ";
item.Element.Parent = 2;
item.Element.Step = 2;

if (x == 6)
{
item.Element.Memo = "40여가지의 그래프부분을 아주 디테일하게 관리하는 부서로 지속된 테스트와 새 수요가 예측되는 차트를 찾아냅니다.";
}

item.ItemColor = Color.Navy;
}

if (x > 9)
{
item.Element.Memo = "프리랜서 ";
item.Element.Parent = 3;
item.Element.Step = 2;
item.ItemColor = Color.Gray;
}

if (x > 12)
{
item.Element.Memo = "프리랜서 ";
item.Element.Parent = 4;
item.Element.Step = 2;
item.ItemColor = Color.Empty;
}

if (x > 15)
{
item.Element.Memo = "계약직 ";
item.Element.Parent = 5;
item.Element.Step = 2;
item.ItemColor = Color.Black;
}

sr.items.Add(item);
}

sList.SeriesCollection.Add(sr);

this.hHippoChart1.Designer.InnerBackColor = Color.FromArgb(100, Color.LightGray);
this.hHippoChart1.Titles.Label.Text = "히포차트 조직도";
this.hHippoChart1.SeriesListDictionary.Add(sList);
this.hHippoChart1.DrawChart();


VB
 
Dim sList As New. SeriesList()
sList.ChartType = ChartType.Organization

Dim r As New. Random()

Dim sr As New. Series()

For x As Integer = 0 To 19
Dim item As New. SeriesItem()
item.Name = x.ToString()
item.YValue = x

item.Element = New OrganizationElement()
item.Element.TitleForeColor = Color.White
item.Element.ForeColor = Color.Black

item.Element.IsAutoSize = True

If x = 0 Then
` 보스
item.Element.Name = "이건이 대표이사"
item.Element.Memo = "회사 대표직을 역임하고 있습니다. 본사 창업자이며 6년간 대표이사직을 수행중이십니다. "
item.Element.Position = "CEO"
item.Element.[Step] = 0
item.Element.Type = OrganizationType.President
item.Element.IsImageView = True
item.Element.Picture = New Bitmap("c:\ppp.jpg")

item.ItemColor = Color.Red
End If

If x = 1 OrElse x = 2 OrElse x = 3 OrElse x = 4 OrElse x = 5 Then
item.Element.Type = OrganizationType.Group
item.Element.[Step] = 1
item.Element.Name = "개발 팀장 " + x.ToString()
item.Element.Memo = "차트 개발 팀장 "
item.Element.Position = "Team Manager"
item.Element.Parent = 0

If x = 1 Then
item.Element.Type = OrganizationType.Inspection
item.Element.[Step] = 1
item.Element.Name = "감사실"
item.Element.Memo = "회장 직속 감사기구"
item.Element.Position = "Audit Team"
End If

If x = 1 Then
item.ItemColor = Color.YellowGreen
item.Element.Picture = New Bitmap("c:\gggg.jpg")
End If
If x = 2 Then
item.ItemColor = Color.Navy
item.Element.Picture = New Bitmap("c:\eee.jpg")
End If
If x = 3 Then
item.ItemColor = Color.Gray
item.Element.Picture = New Bitmap("c:\ooo.jpg")
End If
If x = 5 Then
item.ItemColor = Color.Black
End If

item.Element.IsImageView = True
End If

If x > 5 Then
item.Element.Name = "개발자 " + x.ToString()
item.Element.Memo = "차트 개발 실무 담당자 "
item.Element.Position = "Developer"
item.Element.[Step] = 2
item.Element.Parent = 2

item.ItemColor = Color.Navy
End If

If x > 7 Then
item.Element.Memo = "게임 개발자 담당자 "
item.Element.Parent = 2
item.Element.[Step] = 2

If x = 6 Then
item.Element.Memo = "40여가지의 그래프부분을 아주 디테일하게 관리하는 부서로 지속된 테스트와 새 수요가 예측되는 차트를 찾아냅니다."
End If

item.ItemColor = Color.Navy
End If

If x > 9 Then
item.Element.Memo = "프리랜서 "
item.Element.Parent = 3
item.Element.[Step] = 2
item.ItemColor = Color.Gray
End If

If x > 12 Then
item.Element.Memo = "프리랜서 "
item.Element.Parent = 4
item.Element.[Step] = 2
item.ItemColor = Color.Empty
End If

If x > 15 Then
item.Element.Memo = "계약직 "
item.Element.Parent = 5
item.Element.[Step] = 2
item.ItemColor = Color.Black
End If

sr.items.Add(item)
Next

sList.SeriesCollection.Add(sr)

Me.hHippoChart1.Designer.InnerBackColor = Color.FromArgb(100, Color.LightGray)
Me.hHippoChart1.Titles.Label.Text = "히포차트 조직도"
Me.hHippoChart1.SeriesListDictionary.Add(sList)
Me.hHippoChart1.DrawChart()


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

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

helpdesk@hippochart.com





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