如何使用silverlight visifire显示图形 [英] How to show graph using silverlight visifire

查看:96
本文介绍了如何使用silverlight visifire显示图形的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

你好朋友......





我已经下载了silverlight visifire dll来显示交互式图表。因为我已经提到了以下链接。



http://www.visifire.com/documentation/Visifire_Documentation/Charts/Common_Tasks/creating_chart_from_sql_data_using_asp.net_and_visifire.htm [ ^ ]



i已如上所述以上链接。它向我展示了单线图,但是当我尝试多线时。它再次显示单行数据。以下代码用于在visifire图中显示多行。



Hello Friends...


I have downloaded silverlight visifire dll to show the interactive graph. for that i had referred following link.

http://www.visifire.com/documentation/Visifire_Documentation/Charts/Common_Tasks/creating_chart_from_sql_data_using_asp.net_and_visifire.htm[^]

i had done as mentioned in above link. it showed me single line graph, but when i tried it for multiple lines. it again showed single line data only. Following code for multiple lines to display in visifire graph.

DateTime ObjStartTime = DateTime.Now.AddHours(-2);

            DateTime ObjEndTime = DateTime.Now;

            string starttime = ObjStartTime.Month.ToString() + "/" + ObjStartTime.Day.ToString() + "/" + ObjStartTime.Year.ToString() + " " + ObjStartTime.Hour.ToString() + ":" + ObjStartTime.Minute.ToString() + ":" + ObjStartTime.Second.ToString();

            string endtime = ObjEndTime.Month.ToString() + "/" + ObjEndTime.Day.ToString() + "/" + ObjEndTime.Year.ToString() + " " + ObjEndTime.Hour.ToString() + ":" + ObjEndTime.Minute.ToString() + ":" + ObjEndTime.Second.ToString();

            OleDbConnection ObjConnection = new OleDbConnection("Provider=IhOLEDB.iHistorian.1;Data Source=TAUSEEF-PC");

            string query = "set starttime=\'" + starttime + "\', endtime=\'" + endtime + "\', samplingmode=rawbytime, rowcount=0 \n select  timestamp as ts,tagname as tag1,value as tag11value from ihrawdata where tagname=TAUSEEF-PC.Simulation00962";

            OleDbDataAdapter ObjDataAdapter = new OleDbDataAdapter(query, ObjConnection);

            DataTable ObjTag1 = new System.Data.DataTable();

            ObjDataAdapter.Fill(ObjTag1);

            query = "set starttime=\'" + starttime + "\', endtime=\'" + endtime + "\', samplingmode=rawbytime, rowcount=0 \n select  timestamp as ts,tagname as tag2,value as tag22value from ihrawdata where tagname=TAUSEEF-PC.Simulation00001";

            ObjDataAdapter = new OleDbDataAdapter(query, ObjConnection);

            DataTable ObjTag2 = new System.Data.DataTable();

            ObjDataAdapter.Fill(ObjTag2);

            DataSet ObjDataSet = new System.Data.DataSet();

            ObjDataSet.Tables.Add(ObjTag1);

            ObjDataSet.Tables.Add(ObjTag2);

            //ObjTag1.PrimaryKey = new DataColumn[] { ObjTag1.Columns["ts"] };

            //ObjDataSet.Relations.Add("Tag12_Primary", ObjTag2.Columns["ts"], ObjTag1.Columns["ts"]);

            DataTable ObjMainTable = new System.Data.DataTable();

            ObjMainTable.Columns.Add("ts", typeof(DateTime));

            ObjMainTable.Columns.Add("tag11value", typeof(double));

            ObjMainTable.Columns.Add("tag22value", typeof(double));

            for (int i = 0; i < ObjTag1.Rows.Count; i++)

            {

                //if (ObjTag1.Rows. || ObjTag2.Rows[i]



                ObjMainTable.Rows.Add(ObjTag1.Rows[i][0], ObjTag1.Rows[i][2], ObjTag2.Rows[i][2]);



            }



            // Initialize StringBuilder class

            StringBuilder chartXaml = new StringBuilder();



            // Append chart XAML data

            chartXaml.Append("<vc:Chart xmlns:vc=\"clr-namespace:Visifire.Charts;assembly=SLVisifire.Charts\" Width=\"800\" Height=\"800\" Theme=\"Theme1\" >");
            chartXaml.Append("<vc:Chart.AxesY>");
            chartXaml.Append("<vc:Axis Prefix=\"$\"></vc:Axis>");
            chartXaml.Append("</vc:Chart.AxesY>");
            chartXaml.Append("<vc:Chart.Titles>");
            chartXaml.Append("<vc:Title Text=\"ASP.NET visifire example By Tauseef Kaldane \" FontSize=\"14\"/>");
            chartXaml.Append("</vc:Chart.Titles>");
            chartXaml.Append("<vc:Chart.Series>");
            chartXaml.Append("<vc:DataSeries RenderAs=\"Line\">");
            chartXaml.Append("<vc:DataSeries.DataPoints>");

            foreach (DataRow dataRow in ObjMainTable.Rows)
            {
                chartXaml.Append("<vc:DataPoint AxisXLabel=\"" + dataRow[0].ToString() + "\" YValue=\"" + dataRow[1].ToString() + "\"/>");

                chartXaml.Append("<vc:DataPoint AxisXLabel=\"" + dataRow[0].ToString() + "\" YValue=\"" + dataRow[2].ToString() + "\"/>");
            }

            chartXaml.Append("</vc:DataSeries.DataPoints>");
            chartXaml.Append("</vc:DataSeries>");
            chartXaml.Append("</vc:Chart.Series>");
            chartXaml.Append("</vc:Chart>");

            // Write object to an HTTP response stream
            Response.Write(chartXaml);





Plz帮助我



Plz help me

推荐答案

\ > < / vc:Axis > );
chartXaml.Append(< / vc:Chart.AxesY > );
chartXaml.Append(< vc:Chart.Titles > );
chartXaml.Append(< vc:Title 文字 = \ ASP.NET visifire < span class =code-attribute>
example Tauseef Kaldane \ FontSize = \ 14 \/ >
);
chartXaml.Append(< / vc:Chart.Titles > );
chartXaml.Append(< vc:Chart.Series > );
chartXaml.Append(< vc:DataSeries RenderAs = \ Line \ > );
chartXaml.Append(< vc:DataSeries.DataPoints > );

foreach(ObjMainTable.Rows中的DataRow dataRow)
{
chartXaml.Append(< vc:DataPoint AxisXLabel = \ + dataRow [0] .ToString( ) + \ YValue = \ + dataRow [1] .ToString() + \/ > );

chartXaml.Append(< vc:DataPoint AxisXLabel = \ + dataRow [0] .ToString() + \ YValue = \ + dataRow [2] .ToS tring() + \/ > );
}

chartXaml.Append(< / vc:DataSeries.DataPoints > );
chartXaml.Append(< / vc:DataSeries > );
chartXaml.Append(< / vc:Chart.Series > );
chartXaml.Append(< / vc:Chart > );

//将对象写入HTTP响应流
Response.Write(chartXaml);
\"></vc:Axis>"); chartXaml.Append("</vc:Chart.AxesY>"); chartXaml.Append("<vc:Chart.Titles>"); chartXaml.Append("<vc:Title Text=\"ASP.NET visifire example By Tauseef Kaldane \" FontSize=\"14\"/>"); chartXaml.Append("</vc:Chart.Titles>"); chartXaml.Append("<vc:Chart.Series>"); chartXaml.Append("<vc:DataSeries RenderAs=\"Line\">"); chartXaml.Append("<vc:DataSeries.DataPoints>"); foreach (DataRow dataRow in ObjMainTable.Rows) { chartXaml.Append("<vc:DataPoint AxisXLabel=\"" + dataRow[0].ToString() + "\" YValue=\"" + dataRow[1].ToString() + "\"/>"); chartXaml.Append("<vc:DataPoint AxisXLabel=\"" + dataRow[0].ToString() + "\" YValue=\"" + dataRow[2].ToString() + "\"/>"); } chartXaml.Append("</vc:DataSeries.DataPoints>"); chartXaml.Append("</vc:DataSeries>"); chartXaml.Append("</vc:Chart.Series>"); chartXaml.Append("</vc:Chart>"); // Write object to an HTTP response stream Response.Write(chartXaml);





Plz帮助我



Plz help me


这篇关于如何使用silverlight visifire显示图形的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆