µ¥ÀÌÅÍ ¹ÙÀεù

Add* ¸Þ¼­µå´Â Y°ªÀÌ ¿©·¯ °³ÀÏÁö¶óµµ ¾î·°Å³ª ÇϳªÀÇ µ¥ÀÌÅ͸¸ Ãß°¡Çϸç XÃàÀÇ °ª °³¼ö¸¸Å­ ¸Þ¼­µå¸¦ ÀÏÀÏÀÌ È£ÃâÇØ¾ß ÇÑ´Ù. ¹Ý¸é µ¥ÀÌÅÍ ¹ÙÀεùÀº Ä÷º¼ÇÀ¸·ÎºÎÅÍ ¿©·¯ °³ÀÇ µ¥ÀÌÅ͸¦ Àϰý Ãß°¡ÇÑ´Ù.

 

void DataBindY (params IEnumerable[] yValue);

void DataBindY (IEnumerable yValue, string yFields);

 

yValue Àμö´Â ¿­°Å °¡´ÉÇÑ Å¸ÀÔÀ̸ç DataView, Data reader, Array, List µîÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù. ´ë·®ÀÇ µ¥ÀÌÅÍ´Â ÁÖ·Î DB¿¡¼­ ÀоîµéÀδÙ. DBÀÇ µ¥ÀÌÅÍ´Â ½ÇÇàÁß¿¡ ¿¬°áÇÏ¿© Àоî¾ß ÇϹǷΠµðÀÚÀΠŸÀÓ¿¡´Â ¹ÙÀεùÀ» ÇÒ ¼ö ¾øÀ¸¸ç ·±Å¸ÀÓ¿¡ ÄÚµå·Î¸¸ ÇÒ ¼ö ÀÖ´Ù.

°¢ Ä÷º¼Ç¿¡¼­ °ªÀ» Àоî Àϰý Ãß°¡ÇÏµÇ Ã¹ ¹øÂ° ¸Þ¼­µå´Â ù Ä÷³À» ÀÐ°í µÎ ¹øÂ° ¸Þ¼­µå´Â yFields·Î ÁöÁ¤ÇÑ Ä÷³À» Àд´Ù. °¡Àå ½¬¿î ¹æ¹ýÀº ¹è¿­¿¡¼­ Àд °ÍÀÌ´Ù.

 

chart1.Series[0].Points.DataBindY(new int[] { 55, 77, 66 });

 

¼¼ °³ÀÇ ¼ºÀû°ªÀÌ ÇѲ¨¹ø¿¡ µî·ÏµÈ´Ù. ´ÙÀ½ ¸Þ¼­µå´Â X°ªµµ °°ÀÌ ÁöÁ¤ÇÑ´Ù.

 

public void DataBindXY (IEnumerable xValue, params IEnumerable[] yValues);

public void DataBindXY (IEnumerable xValue, string xField, IEnumerable yValue, string yFields);

 

X ¹è¿­À» ÁöÁ¤Çϸé ÇлýÀÇ À̸§µµ ÇÑÁÙ¿¡ ´Ù ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù.

 

chart1.Series[0].Points.DataBindXY(new string[] { "ö¼ö", "¿µÈñ", "µ¿¼ö" }, new int[] { 55, 77, 66 });

 

¹è¿­º¸´Ù´Â µ¥ÀÌÅͺ£À̽º°¡ ´õ ÀϹÝÀûÀÌ´Ù. ¾ó¸¶µçÁö ¸¹Àº µ¥ÀÌÅ͸¦ Ãâ·ÂÇÒ ¼ö ÀÖ´Ù. ¸Þ¸ð¸®»ó¿¡¼­ Å×À̺íÀ» ¸¸µç ÈÄ ¿¬°áÇØ º¸ÀÚ.

 

private void Form1_Load(object sender, EventArgs e)

{

    chart1.Legends[0].Enabled = false;

    DataTable tAge = MakePeopleTable();

    chart1.Series[0].Points.DataBindY(tAge.Rows, "Age");

}

 

private DataTable MakePeopleTable()

{

    DataTable tblPeople = new DataTable("tblPeople");

 

    DataColumn col;

    DataRow row;

 

    // ¿­ µî·Ï

    col = new DataColumn("Name", typeof(String));

    col.MaxLength = 10;

    col.AllowDBNull = false;

    col.Unique = true;

    tblPeople.Columns.Add(col);

 

    tblPeople.PrimaryKey = new DataColumn[] { col };

 

    col = new DataColumn("Age", typeof(Int32));

    col.AllowDBNull = false;

    tblPeople.Columns.Add(col);

 

    col = new DataColumn("Male", typeof(bool));

    col.AllowDBNull = false;

    tblPeople.Columns.Add(col);

 

    // Çà »ðÀÔ

    row = tblPeople.NewRow();

    row["Name"] = "Á¤¿ì¼º";

    row["Age"] = 36;

    row["Male"] = true;

    tblPeople.Rows.Add(row);

 

    row = tblPeople.NewRow();

    row["Name"] = "°í¼Ò¿µ";

    row["Age"] = 32;

    row["Male"] = false;

    tblPeople.Rows.Add(row);

 

    row = tblPeople.NewRow();

    row["Name"] = "¹è¿ëÁØ";

    row["Age"] = 37;

    row["Male"] = true;

    tblPeople.Rows.Add(row);

 

    row = tblPeople.NewRow();

    row["Name"] = "±èÅÂÈñ";

    row["Age"] = 29;

    row["Male"] = false;

    tblPeople.Rows.Add(row);

 

    tblPeople.AcceptChanges();

 

    return tblPeople;

}

DataTable ÀÚü´Â ¿­°Å °¡´ÉÇÑ °ªÀÌ ¾Æ´Ï¹Ç·Î tAge.Rows¸¦ ÁöÁ¤ÇØ¾ß ÇÑ´Ù. 4¸íÀÇ ³ªÀ̰¡ ³ªÅ¸³­´Ù. Age Çʵ常 »ç¿ëÇߴµ¥ À̸§µµ Ç¥½ÃÇÒ ¼ö ÀÖ´Ù.

 

chart1.Series[0].Points.DataBindXY(tAge.Rows, "Name", tAge.Rows, "Age");

X°ª°ú Y°ªÀÇ Å×À̺íÀÌ ²À ÀÏÄ¡ÇÏÁö ¾Ê¾Æµµ »ó°ü ¾ø´Ù. ¸¶Áö¸· ÇÔ¼ö´Â ´ÙÀ½°ú °°´Ù.

 

public void DataBind (IEnumerable dataSource, string xField, string yFields, string otherFields);

 

ÇÑ Å×ÀÌºí¿¡¼­ X, Y°ªÀ» ´Ù ±¸ÇÏ¸ç ¸¶Áö¸· Àμö·Î ¹ÙÀεù ·êÀ» ±ÔÁ¤ÇÏ´Â Çʵ带 ÁöÁ¤ÇÑ´Ù. ´ÙÀ½Àº ¾Õ ÄÚµå¿Í °á°ú°¡ °°´Ù.

 

chart1.Series[0].Points.DataBind(tAge.Rows, "Name", "Age", "");

 

¸Þ¸ð¸®»ó¿¡¼­ ¸¸µç Å×À̺íÀÌ ¾Æ´Ñ DBMS¿¡¼­ ÀÐÀº Å×À̺íÀ» ¹ÙÀεùÇÒ ¼öµµ ÀÖ´Ù. ÀÌ ½Ç½ÀÀ» ÇØ º¸·Á¸é SQL ¼­¹ö(¶Ç´Â ´Ù¸¥ DBMS)°¡ ¼³Ä¡µÇ¾î ÀÖ¾î¾ß Çϰí SQLÀ» ¾î´À Á¤µµ ÇÒ ¼ö ÀÖ¾î¾ß ÇÑ´Ù. Â÷Æ®ÀÇ ¼Ó¼ºÃ¢¿¡¼­ DataSource ¼Ó¼º ÆË¾÷À» ¿­°í µ¥ÀÌÅÍ ¼Ò½º Ãß°¡¸¦ ¼±ÅÃÇÑ´Ù.

 

µ¥ÀÌÅͺ£À̽º¸¦ ¼±ÅÃÇÏ°í ·ÎÄà ȣ½ºÆ®¿¡ ´ëÇÑ ¿¬°áÀ» »ý¼ºÇÑ´Ù. °­Á Á¦ÀÛ PC¿¡´Â Study µ¥ÀÌÅͺ£À̽º¿¡ ¿©·¯ °³ÀÇ ½Ç½À Å×À̺íÀÌ ÁغñµÇ¾î Àִµ¥ ¿©·¯ºÐÀº SQL ¼­¹ö·Î ´ëÃæ ¾Æ¹« Å×À̺íÀ̳ª ¸¸µé¾î ³õ°í ½Ç½ÀÇØ º¸ÀÚ.

ÀÌ Áß µµ¼­ÀÇ Á¤º¸¸¦ ÀúÀåÇϰí ÀÖ´Â tCity Å×À̺íÀ» ¼±ÅÃÇÑ´Ù. ¿ì¸®³ª¶ó µµ½ÃÀÇ Àα¸, ¸éÀû µî¿¡ ´ëÇÑ Á¤º¸°¡ ÀúÀåµÇ¾î ÀÖ´Ù.

¿©±â±îÁö ó¸®ÇÑ ÈÄ Form1_Load¿¡ ´ÙÀ½ Äڵ带 ÀÛ¼ºÇÑ´Ù.

 

private void Form1_Load(object sender, EventArgs e)

{

       // TODO: ÀÌ ÄÚµå´Â µ¥ÀÌÅ͸¦ 'studyDataSet.tCity' Å×ÀÌºí¿¡ ·ÎµåÇÕ´Ï´Ù. ÇÊ¿ä ½Ã ÀÌ Äڵ带 À̵¿Çϰųª Á¦°ÅÇÒ ¼ö ÀÖ½À´Ï´Ù.

       this.tCityTableAdapter.Fill(this.studyDataSet.tCity);

       chart1.Series[0].Points.DataBind(studyDataSet.tCity, "Name", "Area", "");

}

 

ù ÁÙÀº ¸¶¹ý»ç°¡ ÀÛ¼ºÇØ ÁØ °ÍÀ̸ç ÀÌ ¹®Àå¿¡ ÀÇÇØ studyDataSet.tCity Å×ÀÌºí¿¡ µ¥ÀÌÅͰ¡ ÀÌ¹Ì ÀÐÇôÁ® ÀÖ´Ù. DataBind ¸Þ¼­µå·Î ¿¬°á¸¸ ÇØ ÁÖ¸é µÈ´Ù. ¸¶¹ý»ç°¡ ¸¸µç Å×À̺íÀº ŸÀԵ忩¼­ ¹Ù·Î ¿­°Å °¡´ÉÇÏ´Ù. Name Çʵ带 XÃàÀ¸·Î Çϰí Area¸¦ YÃàÀ¸·Î ÇÏ¸é µµ½Ãº° ¸éÀûÀÌ Â÷Æ®·Î Ãâ·ÂµÈ´Ù.

YÃà Çʵ带 Popu·Î º¯°æÇÏ¸é µµ½Ãº° Àα¸¼ö¸¦ Â÷Æ®·Î º¸¿©ÁØ´Ù. DataBind ¸Þ¼­µå ´ë½Å ½Ã¸®ÁîÀÇ °¢ ¼Ó¼º¿¡ Å×À̺í°ú X Çʵå, Y Çʵ带 ÁöÁ¤Çصµ °á°ú´Â °°´Ù.

 

private void Form1_Load(object sender, EventArgs e)

{

    // TODO: ÀÌ ÄÚµå´Â µ¥ÀÌÅ͸¦ 'studyDataSet.tCity' Å×ÀÌºí¿¡ ·ÎµåÇÕ´Ï´Ù. ÇÊ¿ä ½Ã ÀÌ Äڵ带 À̵¿Çϰųª Á¦°ÅÇÒ ¼ö ÀÖ½À´Ï´Ù.

    this.tCityTableAdapter.Fill(this.studyDataSet.tCity);

    chart1.DataSource = studyDataSet.tCity;

    chart1.Series[0].XValueMember = "Name";

    chart1.Series[0].YValueMembers = "Area";

}

 

µ¥ÀÌÅͺ£À̽º¿Í ¿¬°áÇÒ ¼ö ÀÖ¾î ¾ó¸¶µçÁö ´Ù¾çÇÑ ¼Ò½º·ÎºÎÅÍ µ¥ÀÌÅ͸¦ ¹Þ¾Æ Â÷Æ®·Î ±×¸± ¼ö ÀÖ´Ù. ´Ù¸¸ ÀÌ ½Ç½ÀÀº Â÷Æ®¿¡ ´ëÇÑ Áö½Äº¸´Ù µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ Áö½ÄÀÌ ´õ ¸¹ÀÌ ÇÊ¿äÇØ ADO.NETÀ» ÃæºÐÈ÷ ¿¬±¸ÇØ ºÁ¾ß ÇÑ´Ù.