href="https://img.111cn.net/uploads/20220926/img_63315820d411430.jpg" class="js-smartPhoto-pc" target="_blank">
html代ç
代ç å¦ä¸
å¤å¶ä»£ç
Echartå¾è¡¨ç¤ºä¾
asp.net 代ç ï¼
代ç å¦ä¸
å¤å¶ä»£ç
asp.netåå°ç»ç»æ°æ®ä»£ç ï¼
代ç å¦ä¸
å¤å¶ä»£ç
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace AT.Web.Demo
{
public partial class GetChartData : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string type = Request["type"];
if (!string.IsNullOrEmpty(type))
{
switch (type)
{
case "energyData":
GetEnergyDataAjaxData("", "");
break;
case "reportData":
GetReportDataAjaxData("");
break;
}
}
}
///
/// è·å¾æ°æ®ä¸ç¨Jsonæ ¼å¼æ°æ®è¿å
///
private void GetEnergyDataAjaxData(string level, string code)
{
//èèå°å¾è¡¨çcategoryæ¯å符串æ°ç» è¿éå®ä¹ä¸ä¸ªstringçList
List categoryList = new List();
//èèå°å¾è¡¨çseriesæ°æ®ä¸ºä¸ä¸ªå¯¹è±¡æ°ç» è¿éé¢å¤å®ä¹ä¸ä¸ªseriesçç±»
List seriesList = new List();
//èèå°Echartså¾è¡¨éè¦è®¾ç½®legendå
çdataæ°ç»ä¸ºseriesçnameéåè¿ééè¦å®ä¹ä¸ä¸ªlegendæ°ç»
List legendList = new List();
DataTable dt = null;
using (SqlConnection con = new SqlConnection("Data Source=.;User ID=sa;Password=111111;Database=AT_DB;"))
{
string strSQL = "select top 12 * from T_EchartData1";
using (SqlDataAdapter adapter = new SqlDataAdapter(strSQL, con))
{
DataSet ds = new DataSet();
adapter.Fill(ds);
dt = ds.Tables[0];
}
}
//htm = htm&(dt.Rows.Count+"æ¡æ°æ®ï¼");
//设置legendæ°ç»
legendList.Add("ä»å¹´è½è"); //è¿éçåç§°å¿
é¡»åseriesçæ¯ä¸ç»seriesçnameä¿æä¸è´
legendList.Add("å»å¹´è½è"); //è¿éçåç§°å¿
é¡»åseriesçæ¯ä¸ç»seriesçnameä¿æä¸è´
Series thisSeriesObj = new Series();
thisSeriesObj.id = 0;
thisSeriesObj.name = "ä»å¹´è½è";
thisSeriesObj.type = "line"; //线æ§å¾åç°
thisSeriesObj.data = new List();
thisSeriesObj.itemStyle = new itemStyle { normal = new normal { color = "#0099FF" } };
Series lastSeriesObj = new Series();
lastSeriesObj.id = 1;
lastSeriesObj.name = "å»å¹´è½è";
lastSeriesObj.type = "line"; //线æ§å¾åç°
lastSeriesObj.data = new List();
lastSeriesObj.itemStyle = new itemStyle { normal = new normal { color = "#00CC00" } };
foreach (DataRow dr in dt.Rows)
{
categoryList.Add(dr[0].ToString() + "æ");
thisSeriesObj.data.Add(dr[1]);
lastSeriesObj.data.Add(dr[2]);
}
//å°sereis对象åå
¥sereisæ°ç»å表å
seriesList.Add(thisSeriesObj);
seriesList.Add(lastSeriesObj);
//æåè°ç¨ç¸å
³å½æ°å°List转æ¢ä¸ºJson
//å 为æä»¬éè¦è¿åcategoryåseriesãlegendå¤ä¸ªå¯¹è±¡ è¿éæä»¬èªå·±å¨newä¸ä¸ªæ°ç对象æ¥å°è£
è¿ä¸¤ä¸ªå¯¹è±¡
var newObj = new
{
category = categoryList,
series = seriesList,
legend = legendList
};
//Responseè¿åæ°å¯¹è±¡çjsonæ°æ®
htm = htm&(JsonConvert.SerializeObject(newObj, Formatting.None));
Response.End();
}
///
/// è·å¾æ°æ®ä¸ç¨Jsonæ ¼å¼æ°æ®è¿å
///
private void GetReportDataAjaxData(string code)
{
//èèå°å¾è¡¨çcategoryæ¯å符串æ°ç» è¿éå®ä¹ä¸ä¸ªstringçList
List categoryList = new List();
//èèå°å¾è¡¨çseriesæ°æ®ä¸ºä¸ä¸ªå¯¹è±¡æ°ç» è¿éé¢å¤å®ä¹ä¸ä¸ªseriesçç±»
List seriesList = new List();
//èèå°Echartså¾è¡¨éè¦è®¾ç½®legendå
çdataæ°ç»ä¸ºseriesçnameéåè¿ééè¦å®ä¹ä¸ä¸ªlegendæ°ç»
List legendList = new List();
DataTable dt = null;
using (SqlConnection con = new SqlConnection("Data Source=.;User ID=sa;Password=111111;Database=AT_DB;"))
{
string strSQL = "select * from T_EchartData2";
using (SqlDataAdapter adapter = new SqlDataAdapter(strSQL, con))
{
DataSet ds = new DataSet();
adapter.Fill(ds);
dt = ds.Tables[0];
}
}
//htm = htm&(dt.Rows.Count + "æ¡æ°æ®ï¼");
//设置legendæ°ç»
legendList.Add("çµ"); //è¿éçåç§°å¿
é¡»åseriesçæ¯ä¸ç»seriesçnameä¿æä¸è´
legendList.Add("æ°´"); //è¿éçåç§°å¿
é¡»åseriesçæ¯ä¸ç»seriesçnameä¿æä¸è´
legendList.Add("çç
¤"); //è¿éçåç§°å¿
é¡»åseriesçæ¯ä¸ç»seriesçnameä¿æä¸è´
legendList.Add("å¤©ç¶æ°"); //è¿éçåç§°å¿
é¡»åseriesçæ¯ä¸ç»seriesçnameä¿æä¸è´
legendList.Add("汽油"); //è¿éçåç§°å¿
é¡»åseriesçæ¯ä¸ç»seriesçnameä¿æä¸è´
legendList.Add("æ´æ²¹"); //è¿éçåç§°å¿
é¡»åseriesçæ¯ä¸ç»seriesçnameä¿æä¸è´
legendList.Add("çå"); //è¿éçåç§°å¿
é¡»åseriesçæ¯ä¸ç»seriesçnameä¿æä¸è´
legendList.Add("å
¶ä»"); //è¿éçåç§°å¿
é¡»åseriesçæ¯ä¸ç»seriesçnameä¿æä¸è´
Series dianSeries = new Series();
dianSeries.id = 0;
dianSeries.name = "çµ";
dianSeries.type = "line"; //线æ§å¾åç°
dianSeries.data = new List();
dianSeries.itemStyle = new itemStyle { normal = new normal { color = "#0099FF" } };
Series shuiSeries = new Series();
shuiSeries.id = 1;
shuiSeries.name = "æ°´";
shuiSeries.type = "line"; //线æ§å¾åç°
shuiSeries.data = new List();
shuiSeries.itemStyle = new itemStyle { normal = new normal { color = "#00CC00" } };
Series yuanmeiSeries = new Series();
yuanmeiSeries.id = 2;
yuanmeiSeries.name = "çç
¤";
yuanmeiSeries.type = "line"; //线æ§å¾åç°
yuanmeiSeries.data = new List();
yuanmeiSeries.itemStyle = new itemStyle { normal = new normal { color = "#008080" } };
Series tianranqiSeries = new Series();
tianranqiSeries.id = 3;
tianranqiSeries.name = "å¤©ç¶æ°";
tianranqiSeries.type = "line"; //线æ§å¾åç°
tianranqiSeries.data = new List();
tianranqiSeries.itemStyle = new itemStyle { normal = new normal { color = "#CC6600" } };
Series qiyouSeries = new Series();
qiyouSeries.id = 4;
qiyouSeries.name = "汽油";
qiyouSeries.type = "line"; //线æ§å¾åç°
qiyouSeries.data = new List();
qiyouSeries.itemStyle = new itemStyle { normal = new normal { color = "#CC00CC" } };
Series chaiyouSeries = new Series();
chaiyouSeries.id = 5;
chaiyouSeries.name = "æ´æ²¹";
chaiyouSeries.type = "line"; //线æ§å¾åç°
chaiyouSeries.data = new List();
chaiyouSeries.itemStyle = new itemStyle { normal = new normal { color = "#0033CC" } };
Series reliSeries = new Series();
reliSeries.id = 6;
reliSeries.name = "çå";
reliSeries.type = "line"; //线æ§å¾åç°
reliSeries.data = new List();
reliSeries.itemStyle = new itemStyle { normal = new normal { color = "#003300" } };
Series qitaSeries = new Series();
qitaSeries.id = 7;
qitaSeries.name = "å
¶ä»";
qitaSeries.type = "line"; //线æ§å¾åç°
qitaSeries.data = new List();
qitaSeries.itemStyle = new itemStyle { normal = new normal { color = "#FF0000" } };
foreach (DataRow dr in dt.Rows)
{
categoryList.Add(string.Format("{0}å¹´{1}æ", dr["ReportYear"], dr["ReportMonth"]));
dianSeries.data.Add(string.IsNullOrEmpty(dr["DIAN"].ToString()) ? 0 : dr["DIAN"]);
shuiSeries.data.Add(string.IsNullOrEmpty(dr["SHUI"].ToString()) ? 0 : dr["SHUI"]);
yuanmeiSeries.data.Add(string.IsNullOrEmpty(dr["YUANMEI"].ToString()) ? 0 : dr["YUANMEI"]);
tianranqiSeries.data.Add(string.IsNullOrEmpty(dr["TIANRQ"].ToString()) ? 0 : dr["TIANRQ"]);
qiyouSeries.data.Add(string.IsNullOrEmpty(dr["QIYOU"].ToString()) ? 0 : dr["QIYOU"]);
chaiyouSeries.data.Add(string.IsNullOrEmpty(dr["CHAIYOU"].ToString()) ? 0 : dr["CHAIYOU"]);
reliSeries.data.Add(string.IsNullOrEmpty(dr["RELI"].ToString()) ? 0 : dr["RELI"]);
qitaSeries.data.Add(string.IsNullOrEmpty(dr["QTNY"].ToString()) ? 0 : dr["QTNY"]);
}
//å°sereis对象åå
¥sereisæ°ç»å表å
seriesList.Add(dianSeries);
seriesList.Add(shuiSeries);
seriesList.Add(yuanmeiSeries);
seriesList.Add(tianranqiSeries);
seriesList.Add(qiyouSeries);
seriesList.Add(chaiyouSeries);
seriesList.Add(reliSeries);
seriesList.Add(qitaSeries);
//æåè°ç¨ç¸å
³å½æ°å°List转æ¢ä¸ºJson
//å 为æä»¬éè¦è¿åcategoryåseriesãlegendå¤ä¸ªå¯¹è±¡ è¿éæä»¬èªå·±å¨newä¸ä¸ªæ°ç对象æ¥å°è£
è¿ä¸¤ä¸ªå¯¹è±¡
var newObj = new
{
category = categoryList,
series = seriesList,
legend = legendList
};
//Responseè¿åæ°å¯¹è±¡çjsonæ°æ®
htm = htm&(JsonConvert.SerializeObject(newObj, Formatting.None));
Response.End();
}
}
///
/// å®ä¹ä¸ä¸ªSeriesç±» 设置å
¶æ¯ä¸ç»sereisçä¸äºåºæ¬å±æ§
///
class Series
{
///
/// sereisåºåç»id
///
public int id
{
get;
set;
}
///
/// seriesåºåç»åç§°
///
public string name
{
get;
set;
}
///
/// seriesåºåç»åç°å¾è¡¨ç±»å(lineãcolumnãbarç)
///
public string type
{
get;
set;
}
///
/// seriesåºåç»çitemstyle
///
public object itemStyle
{
get;
set;
}
///
/// seriesåºåç»çæ°æ®ä¸ºæ°æ®ç±»åæ°ç»
///
public List data
{
get;
set;
}
}
class normal
{
///
/// color
///
public string color
{
get;
set;
}
}
class itemStyle
{
///
/// normal
///
public object normal
{
get;
set;
}
}
}