#region 柱形色调
/// <summary>
/// 柱形色调
/// </summary>
private string[] myColor = new string[]
{
"DarkGreen",
"DimGray",
"DodgerBlue",
"Orchid", //Peru
"Orange",
"Orchid",
"Gold",
"Peru",
"Lime",
"Tan",
"Red",
"GreenYellow",
"DarkGreen",
"DimGray",
"Orchid"
};
#endregion

#region 创建webchart实例
/// <summary>
/// 创建webchart实例
/// </summary>
/// <param name="listValue"></param>
/// <param name="listText"></param>
private void bindchart(ArrayList listValue, ArrayList listText)
{
//遍历DataTable为每条记录生成一个柱状
int maxValue = 0;
int max_ = 0;
for (int i = 0; i < listValue.Count; i++)
{
if (Convert.ToInt32(listValue[i]) > max_)
{
max_ = Convert.ToInt32(listValue[i]);
maxValue = i;
}
//创建对象
ColumnChart mychart = new ColumnChart();

//设置柱子宽度
mychart.MaxColumnWidth = 44;
//颜色
mychart.Fill.Color = Color.FromName(this.myColor[i]);
//在柱子上显示数量
mychart.DataLabels.Visible = true;
//数量的字体
mychart.DataLabels.Font = new Font("Verdana", 16);

//添加
float dsfgd = float.Parse(listValue[i].ToString());
mychart.Data.Add(new ChartPoint("", float.Parse(listValue[i].ToString())));
//备注
mychart.Legend = listText[i].ToString();

this.chartSp.Charts.Add(mychart);
this.chartSp.XTitle.Text = mychart.Legend;
}
//辅助设置
//背景色
//ChartControl1.Background.Color = Color.FromArgb(55, 0, 16);
chartSp.YAxisFont.ForeColor = Color.FromArgb(165, 0, 16);//(165, 0, 16);
chartSp.XAxisFont.ForeColor = Color.FromArgb(165, 0, 16);
chartSp.YValuesFormat = "{0}"; //{0:N}
//内部线条
chartSp.Border.Color = Color.FromArgb(200, 200, 200);
//边框样式
chartSp.BorderStyle = BorderStyle.None;
//y最大值
double max = double.Parse(listValue[maxValue].ToString());
int intv = 2;

//数量小于16的情况
if (max < 16)
{
max = 16;
}
//大于16的情况
else
{
intv = int.Parse(Math.Ceiling(max / 8).ToString());
max += intv;
}

//设置Y轴终点值
chartSp.YCustomEnd = int.Parse(max.ToString());
//y递增值
chartSp.YValuesInterval = intv;

//生成
this.chartSp.RedrawChart();
}
#endregion

#region 绑定全部数据
public void ShowAllData()
{
if (Session["admin_Number"] == null)
{
Response.Write("<script language=javascript>alert('连接超时,请重新登录!!');</script>");
Response.Write("<script language=javascript>parent.location.href='admin_Login_.aspx'</script>");
Response.Write("<script language=javascript>window.open('admin_Login_.aspx');opener=null;top.close();</script>");
}
else
{
BLL_StatisticSP sp = new BLL_StatisticSP();
ArrayList listValue = new ArrayList();//值
ArrayList listText = new ArrayList();//显示文本
int yhl = sp.GetAllYHL();//用户量
int sbl = sp.GetAllSBL();//设备量
int zsl = sp.GetAllSpShow();//展示量
int djl = sp.GetAllDJL();//点击量
int azl = sp.GetAllAZL();//安装量
int app = sp.GetAppCount(""); //应用数
int appUser = sp.GetAppUserCount("");//开发者人数
listValue.Add(yhl);
listValue.Add(sbl);
listValue.Add(zsl);
listValue.Add(djl);
listValue.Add(azl);
listText.Add("用户量");
listText.Add("设备量");
listText.Add("展示量");
listText.Add("点击量");
listText.Add("apk安装量");
this.lblYHl.Text = yhl + "人";
this.lblSBL.Text = sbl + "部";
this.lblZSL.Text = zsl + "次";
this.lblDJL.Text = djl + "次";
this.lblAZL.Text = azl + "次";
this.lblAPP.Text = app + "个";
this.lblAppUser.Text = appUser + "人";
bindchart(listValue, listText);
}

}
#endregion

ASP.NET数据报表之柱状图 ------工作日志的更多相关文章

  1. 如何用asp.net MVC框架、highChart库从sql server数据库获取数据动态生成柱状图

    如何用asp.net MVC框架.highChart库从sql server数据库获取数据动态生成柱状图?效果大概是这样的,如图: 请问大侠这个这么实现呢?

  2. 报表学习总结(一)——ASP.NET 水晶报表(Crystal Reports)的简单使用

    一.水晶报表简介 Crystal Reports(水晶报表)是一款商务智能(BI)软件,主要用于设计及产生报表.水晶报表是业内最专业.功能最强的报表系统,它除了强大的报表功能外.最大的优势是实现了与绝 ...

  3. ASP.NET Core使用Elasticsearch记录NLog日志

    ASP.NET Core使用Elasticsearch记录NLog日志 1.新建一个 ASP.NET Core项目 2.安装Nuge包 运行:Install-Package NLog.Web.AspN ...

  4. C#实现多级子目录Zip压缩解压实例 NET4.6下的UTC时间转换 [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了 asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程 asp.net core异步进行新增操作并且需要判断某些字段是否重复的三种解决方案 .NET Core开发日志

    C#实现多级子目录Zip压缩解压实例 参考 https://blog.csdn.net/lki_suidongdong/article/details/20942977 重点: 实现多级子目录的压缩, ...

  5. 领导满意,客户喜欢的数据报表怎么做,交给Smartbi!

    财务分析是以会计核算和报表资料及其他相关资料为依据,采用一系列专门的分析技术和方法,对企业等经济组织过去和现在有关筹资活动.投资活动.经营活动.分配活动的盈利能力.营运能力.偿债能力和增长能力状况等进 ...

  6. 告别收费BI!如何自己动手做一个免费的可视化数据报表还支持文档在线预览?

    本人大学刚毕业目前在一家互联网公司从事产品运营工作,一季度刚过,公司需要我出一份产品运营数据报表,由于产品用户数据.订单数据等数据量太大,我希望找一款Bi产品,支持我做出一个精美的可视化报表,还可以让 ...

  7. 使用SharePoint Designer定制开发员工工作日志系统实例!

    昨天已介绍了一篇<使用SharePoint Designer定制开发专家库系统实例!>,今天继续来介绍使用SharePoint Designer定制开发员工工作日志系统实例,主要功能包括填 ...

  8. 用Excel完成专业化数据统计、分析工作

    使用Excel可以完成很多专业软件才能完成的数据统计.分析工作,比如:直方图.相关系数.协方差.各种概率分布.抽样与动态模拟.总体均值判断,均值推断.线性.非线性回归.多元回归分析.时间序列等.本专题 ...

  9. Asp 图形化报表

    1  图形化的报表的优点 分析.统计业务数据 表现直观,漂亮,有震撼效果的图形化的方式展现业务数据 复杂的业务数据简单化 2  常用的报表组件 HighCharts:是纯js编写的图形化报表 水晶报表 ...

随机推荐

  1. DataNode工作原理(四)

    DataNode的作用:提供真实文件数据的存储服务.以文件块进行存储. 文件块(block):最基本的存储单位.对文件内容而言,一个文件的长度大小是size,那么从文件的0偏移开始,按照固定的大小,顺 ...

  2. 转:Win7 IIS7应用PHP Manager使用FastCGI通道快速部署PHP支持

    原文来自于:http://www.jb51.net/os/windows/62390.html 正常情况下,我们在Windows系统中部署WEB服务器(iis)支持PHP是采用ISAPI通道.参照这篇 ...

  3. runAllManagedModulesForAllRequests 和 invalid url

    有这样的经验, 在本地的 IIS 上网站运行正常,但是发布到服务器上就一堆怪怪的问题 : MVC routing not work http://stackoverflow.com/questions ...

  4. Beauty Contest(graham求凸包算法)

    Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 25256   Accepted: 7756 Description Bess ...

  5. Poetize6: Acting Cute

    3042: Acting Cute Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 59  Solved: 36[Submit][Status] Des ...

  6. 使用ICSharpCode.SharpZipLib.Zip实现压缩与解压缩

    使用开源类库ICSharpCode.SharpZipLib.Zip可以实现压缩与解压缩功能,源代码和DLL可以从http://www.icsharpcode.net/OpenSource/SharpZ ...

  7. 字符串(后缀自动机):HDU 4622 Reincarnation

    Reincarnation Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 131072/65536 K (Java/Others)To ...

  8. 网络流(最小费用最大流):POJ 2135 Farm Tour

    Farm Tour Time Limit: 1000ms Memory Limit: 65536KB This problem will be judged on PKU. Original ID: ...

  9. 【宽搜】ECNA 2015 E Squawk Virus (Codeforces GYM 100825)

    题目链接: http://codeforces.com/gym/100825 题目大意: N个点M条无向边,(N<=100,M<=N(N-1)/2),起始感染源S,时间T(T<10) ...

  10. Listview加载更多是,恢复到原来的位置,如果不加特殊处理,总是跳转第一条

    1.记录listView滚动到的位置的坐标,然后利用listView.scrollTo精确的进行恢复 listView.setOnScrollListener(new OnScrollListener ...