itman2 Ответов: 2

Как Нарисовать Свечной График В C# ?


привет , у меня есть таблица с, например, 100 записями с : id-name-open_price-close_price low and high price-date and...
я хочу нарисовать с ними свечной график .
я пишу этот код для получения записей из моей таблицы :

SqlConnection con = new SqlConnection();
            con.ConnectionString = "Data Source=lenovo;Initial Catalog=getinfo;Integrated Security=True";
            con.Open();
            string sqlcmd = "select *  from database  ";
            SqlCommand comm = new SqlCommand(sqlcmd, con);
            SqlDataAdapter sdap = new SqlDataAdapter();
            DataTable dt = new DataTable();
            sdap.SelectCommand = comm;
            sdap.Fill(dt);
            
            for (int t = 0; t < dt.Rows.Count; t++)
            {
                ??????? draw candlestick chart ??????
            }

BillWoodruff

Существует свечной график, предоставленный Microsoft в:

тип диаграмм
биржевая диаграмма
Система.Окна.Формы.DataVisualization.Картирование
Системы.Веб.Пользовательского интерфейса.DataVisualization.Картирование

http://msdn.microsoft.com/en-us/library/dd456671(v=против 100). aspx

itman2

танков Владимир BillWoodruff
я новичок в c# . я могу рисовать линейные и столбчатые графики, но не знаю, как нарисовать свечной график.

можете ли вы написать простой образец! за это ?




2 Ответов

Рейтинг:
1

Kornfeld Eliyahu Peter

Паутина? Выиграть? Для обоих есть элемент управления диаграммой, который поддерживает все виды отображения...
http://www.microsoft.com/en-us/download/details.aspx?id=14422[^]
https://code.msdn.microsoft.com/Samples-Environments-for-b01e9c61[^]


Рейтинг:
0

itman2

эта треска может рисовать свечной график ! я действительно заплатил 3 доллара, чтобы Андре это понял !! :-)

DataSet ds = new DataSet();
         chart1 = new Chart();
         SqlConnection con = new SqlConnection();
         con.ConnectionString = "Data Source=xxxx;Initial Catalog=xxxx;Integrated Security=True";
         con.Open();
         string sql = "Select * from xxxx ";

         SqlCommand cmd = new SqlCommand(sql, con);
         cmd.CommandType = CommandType.Text;

         SqlDataAdapter sa = new SqlDataAdapter();
         sa.SelectCommand = cmd;

         sa.Fill(ds);
         con.Close();
         chart1.Series["Daily"].ChartType = SeriesChartType.Candlestick;
         chart1.DataSource = sa;

         chart1.Series["Daily"].XValueMember = "Date";
         chart1.Series["Daily"].YValueMembers = "ghbishtarin, ghkamtarin, ghopen, ghclose";
         chart1.DataBind();
         chart1.Series["Daily"].BorderColor = System.Drawing.Color.Black;
         chart1.Series["Daily"].Color = System.Drawing.Color.Black;
         chart1.Series["Daily"].CustomProperties = "PriceDownColor=Green, PriceUpColor=Red";
         chart1.Series["Daily"].XValueType = ChartValueType.Date;
         chart1.ChartAreas[0].AxisX.MajorGrid.LineWidth = 0;
         chart1.ChartAreas[0].AxisY.MajorGrid.LineWidth = 0;
         chart1.ChartAreas[0].AxisY.Minimum = 0;
         chart1.ChartAreas[0].AxisY.Maximum = 210;
         chart1.DataManipulator.IsStartFromFirst = true;


Member 12408409

Привет, я использовал 2-е решение,но я не получил должного результата. Элемент управления диаграммой пуст.