我需要使用FusionCharts XT试用版开发堆叠列图表。我找不到使用数据源作为堆叠列数据库的任何示例。他们展示了使用XML/JSON的示例。如果你在这方面有使用图表的经验,请帮助我。提前谢谢。
下面是我当前的代码。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using InfoSoftGlobal;
namespace workflowmangement
{
public partial class chart1 : System.Web.UI.Page
{
string conString = System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
protected void Page_Load(object sender, EventArgs e)
{
siva.Text = CreateChart();
}
public string CreateChart()
{
SqlConnection con = new SqlConnection(conString);
string sqlStatement = "SELECT Activity_Name,Activity_Id from Activity";
SqlCommand cmd = new SqlCommand(sqlStatement, con);
con.Open();
SqlDataReader reader = cmd.ExecuteReader();
string strXML;
strXML = "<graph caption='Category Wise Quantity' subCaption='By Quantity' decimalPrecision='0' showNames='1' numberSuffix=' Units' pieSliceDepth='30' formatNumberScale='0'>";
while (reader.Read())
{
strXML += "<set name='" + reader["Activity_Name"].ToString() + "' value='" + reader["Activity_Id"].ToString() + "' />";
}
strXML += "</graph>";
return FusionCharts.RenderChart("/FusionCharts/FCF_Pie3D.swf", "", strXML, "FactorySum", "650", "450", false, false);
}
}
}
使用FusionCharts可以通过两种方式呈现图表。
- JavaScript Flash
数据需要使用XML/JSON两种格式之一。XML/JSON数据文件包含数据点和配置。配置将允许我们自定义图表的外观和感觉。
您打算添加图表的aspx页面应包含以下代码行
<asp:Literal ID="Literal1" runat="server"></asp:Literal>
,它将文字控件添加到充当图表容器的页面。确保使用相同的文字ID,在这种情况下,文字ID是"Literal1"。
查看这里的实时演示http://goo.gl/nH4zj
查看这里的文档:http://goo.gl/MmqU6
您的XML必须如下所示:
<categories>
<category label='Product A' />
<category label='Product B' />
<category label='Product C' />
<category label='Product D' />
<category label='Product E' />
</categories>
<dataset seriesName='2004' color='AFD8F8' showValues='0'>
<set value='25601.34' />
<set value='20148.82' />
<set value='17372.76' />
<set value='35407.15' />
<set value='38105.68' />
</dataset>
<dataset seriesName='2005' color='F6BD0F' showValues='0'>
<set value='57401.85' />
<set value='41941.19' />
<set value='45263.37' />
<set value='117320.16' />
<set value='114845.27' />
</dataset>
<dataset seriesName='2006' color='8BBA00' showValues='0'>
<set value='45000.65' />
<set value='44835.76' />
<set value='18722.18' />
<set value='77557.31' />
<set value='92633.68' />
</dataset>
您可以通过使用这行代码传递上面的XML来呈现图表。
<>之前Literal1。Text = FusionCharts.RenderChart("Charts/StackedColumn2D.swf", " ", xmlStr.ToString(), "productSales", "600", "300", false, true);之前xmlStr是用于呈现图表的编码XML数据变量。
数据存储和检索的位置并不重要。你需要做的是用XML或JSON编码你的数据,并将其传递给RenderChart方法。在您的情况下,数据需要从MSSQL数据库服务器检索并编码为XML/JSON,这是方便的,并传递给RenderChart方法。
下载这个堆叠列2D图表的示例项目,并使用它来获得更好的想法。
在这里下载演示:https://github.com/OpenCV/stackedbar2d
FusionChart只接受两种形式的数据- XML或JSON,您可以使用任何服务器端语言——数据源。数据可以从数据源中检索,并在XML/JSON中用于构建图表。
——简单的步骤
1) http://docs.fusioncharts.com/charts/contents/guide-for-web-developers/csnet/CS_DB.html 在本文中,您将了解如何使用数据库绘制图表。http://docs.fusioncharts.com/charts/
2)
在这个链接中,您将获得使用堆叠柱状图的示例。
您只需要以堆叠图表XML格式提供来自数据源的数据,并将图表类型更改为StackedColumn3D/2D。你完成了!如果这不是你要找的…那再详细说明一下你的要求吧?