//生成文章来源饼图 public string CreateSumPie(string key, DataTable dt) { ChartTitle title = new ChartTitle() { text = key, subtext = "平台对比" }; ChartOption option = new PieChartOption(title, ""); ChartLegend legend = new ChartLegend(); legend.data = "新闻,微博,微信".Split(','); ChartData[] data_mod = new ChartData[legend.data.Length]; for (int i = 0; i < legend.data.Length; i++) { data_mod[i] = new ChartData() { name = legend.data[i], value = dt.Select("Source='" + legend.data[i] + "'").Length }; } List <ChartSeries> seriesList = new List <ChartSeries>() { new ChartSeries() { name = "平台对比", data_mod = data_mod } }; ((PieChartOption)option).AddData(legend, seriesList, ""); return(option.ToString()); }
public void PieChartBind(DataTable dt, string wherestr, string field = "Year") { PieChartOption pieoption = new PieChartOption(new ChartTitle() { text = "推广统计", subtext = "按月统计" }, ""); List <string> legeds = new List <string>(); List <ChartSeries> dataList = new List <ChartSeries>(); DataRow[] drs = dt.Select(field + "=" + wherestr); List <ChartData> datas = new List <ChartData>(); foreach (DataRow dr in drs) { legeds.Add(dr["Month"].ToString()); datas.Add(new ChartData() { name = dr["Month"].ToString(), value = DataConvert.CLng(dr["PCount"]) }); } dataList.Add(new ChartSeries() { name = "", data_mod = datas.ToArray() }); pieoption.AddData(new ChartLegend() { data = legeds.ToArray() }, dataList, ""); piecode.Value = pieoption.ToString(); }
//根据文章发布时间产生扩散速度图 public string CreatePie(string key, DataTable dt) { ChartTitle title = new ChartTitle() { text = key, subtext = "扩散速度" }; ChartOption option = new PieChartOption(title, ""); ChartLegend legend = new ChartLegend(); legend.data = "24小时内,72小时内,一周内,30天内,30天外".Split(','); ChartData[] data_mod = new ChartData[5]; DateTime time_24 = DateTime.Now.AddHours(-24), time_72 = DateTime.Now.AddHours(-72), time_d7 = DateTime.Now.AddDays(-7), time_d30 = DateTime.Now.AddMonths(-1); string sql = "CDate>=#{0}# AND CDate<=#{1}#"; data_mod[0] = (new ChartData() { name = legend.data[0], value = dt.Select("CDate>=#" + time_24 + "#").Length }); data_mod[1] = (new ChartData() { name = legend.data[1], value = dt.Select(string.Format(sql, time_72, time_24)).Length }); data_mod[2] = (new ChartData() { name = legend.data[2], value = dt.Select(string.Format(sql, time_d7, time_72)).Length }); data_mod[3] = (new ChartData() { name = legend.data[3], value = dt.Select(string.Format(sql, time_d30, time_d7)).Length }); data_mod[4] = (new ChartData() { name = legend.data[4], value = dt.Select("CDate<=#" + time_d30 + "#").Length }); List <ChartSeries> seriesList = new List <ChartSeries>() { new ChartSeries() { name = "扩散速度", data_mod = data_mod } }; ((PieChartOption)option).AddData(legend, seriesList, "empy"); return(option.ToString()); }