c#图标、显示图表、图形、json echarts实例 数据封装【c#】
page:
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="ViewxxxxChartsInfo.ascx.cs" Inherits="DotNetNuke.Modules.HRAddUser.ViewxxxxChartsInfo" %>
<style type="text/css">
.GridHead th {
text-align: center;
}
</style>
<asp:Panel ID="panMain" runat="server">
<table style="border: 1px solid #e1e0e0">
<tr>
<td>
<asp:Label ID="Label3" runat="server" Text="查询范围:"></asp:Label>
<asp:DropDownList ID="ddlDateArray" runat="server">
<asp:ListItem Selected="True" Text="选择一" Value="选择一"></asp:ListItem>
<asp:ListItem Text="选择二" Value="选择二"></asp:ListItem>
<asp:ListItem Text="全部" Value="全部"></asp:ListItem>
</asp:DropDownList>
<asp:Label ID="Label4" runat="server" Text="xxxx名称:"></asp:Label>
<asp:TextBox ID="tbxInfoxxxxxName" runat="server"></asp:TextBox>
<asp:Button ID="btnselect" runat="server" Text="查询" OnClick="btnselect_Click" ControlStyle-BackColor="#0ea915" ControlStyle-ForeColor="White" />
</td>
</tr> <tr>
<td> <div id="container" style="height: 600px; width: 1000px"></div>
</td>
</tr>
<asp:Label ID="Type1" runat="server" Style="display: none;"></asp:Label>
<asp:Label ID="Type2" runat="server" Style="display: none;"></asp:Label>
<asp:Label ID="Type3" runat="server" Style="display: none;"></asp:Label>
<asp:Label ID="Type4" runat="server" Style="display: none;"></asp:Label>
<asp:Label ID="Type5" runat="server" Style="display: none;"></asp:Label>
</table>
<script type="text/javascript" src="http://www.shicishu.com/down/echarts.min.js"></script>
<script type="text/javascript" src="http://www.shicishu.com/down/echarts-gl.min.js"></script>
<script type="text/javascript">
var span1 = document.getElementById('<%=Type1.ClientID%>').innerHTML;
var sp1 = JSON.parse(span1);
var span2 = document.getElementById('<%=Type2.ClientID%>').innerHTML;
var sp2 = JSON.parse(span2);
var span3 = document.getElementById('<%=Type3.ClientID%>').innerHTML;
var sp3 = JSON.parse(span3);
var span4 = document.getElementById('<%=Type4.ClientID%>').innerHTML;
var sp4 = JSON.parse(span4);
var span5 = document.getElementById('<%=Type5.ClientID%>').innerHTML;
var sp5 = JSON.parse(span5); let maxValue2 = Math.max.apply(null, sp2);
let maxValue3 = Math.max.apply(null, sp3);
let maxValue4 = Math.max.apply(null, sp4);
let maxValue5 = Math.max.apply(null, sp5);
var arr = [maxValue2, maxValue3, maxValue4,maxValue5];
let maxval = Math.max.apply(null, arr); var dom = document.getElementById("container");
var myChart = echarts.init(dom);
var app = {};
option = null;
option = {
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'cross',
crossStyle: {
color: '#999'
}
}
},
toolbox: {
feature: {
dataView: { show: true, readOnly: false },
magicType: { show: true, type: ['line', 'bar'] },
restore: { show: true },
saveAsImage: { show: true }
}
},
legend: {
data: ['营业收入', '应缴管理费', '实缴管理费','尚欠管理费']
},
xAxis: [
{
type: 'category',
data: sp1,
axisPointer: {
type: 'shadow'
}
}
],
yAxis: [
{
type: 'value',
name: '金额(元)',
min: 0,
max: maxval,
interval: maxval/10,
axisLabel: {
formatter: '{value}'
}
} ],
series: [
{
name: '营业收入',
type: 'bar',
data: sp2
},
{
name: '应缴管理费',
type: 'bar',
data: sp3
},
{
name: '实缴管理费',
type: 'bar',
data: sp4
},
{
name: '尚欠管理费',
type: 'bar',
data: sp5
}
]
}; if (option && typeof option === "object") {
myChart.setOption(option, true);
}
</script>
</asp:Panel>
controller:
using System;
using System.Data;
using System.Web.UI.WebControls;
using DotNetNuke.Modules.ControllerData;
using DotNetNuke.Security;
using DotNetNuke.Services.Localization; namespace DotNetNuke.Modules.ControllerData
{
public partial class ViewxxxxChartsInfo : DotNetNuke.Entities.Modules.PortalModuleBase, DotNetNuke.Entities.Modules.IActionable
{
private ControllerData CD = new ControllerData();
private DataTable dtTosxxxInfo = new DataTable(); protected void Page_Load(object sender, EventArgs e)
{ FillDG(); if (!IsPostBack)
{
FillUI();
}
} private void FillDG()
{ string swhere = " where xxxxName like '%" + tbxInfoxxxxxName.Text + "%' ";
bool OnlyExpire;
if (ddlDateArray.Text == "全部")
OnlyExpire = false;
else
OnlyExpire = true; dtTosxxxInfo = CD.GetTosxxxxChartsInfo(swhere, ddlDateArray.Text);
} private void FillUI()
{
Type1.Text = Convert.ToString(dtTosxxxInfo.Rows[0]["jsons"]);
Type2.Text = Convert.ToString(dtTosxxxInfo.Rows[1]["jsons"]);
Type3.Text = Convert.ToString(dtTosxxxInfo.Rows[2]["jsons"]);
Type4.Text = Convert.ToString(dtTosxxxInfo.Rows[3]["jsons"]);
Type5.Text = Convert.ToString(dtTosxxxInfo.Rows[4]["jsons"]);
}
//页面响应移动代码
#region IActionable 成员 DotNetNuke.Entities.Modules.Actions.ModuleActionCollection DotNetNuke.Entities.Modules.IActionable.ModuleActions
{
get
{
Entities.Modules.Actions.ModuleActionCollection Actions = new
Entities.Modules.Actions.ModuleActionCollection();
Actions.Add(GetNextActionID(),
Localization.GetString(Entities.Modules.Actions.ModuleActionType.AddContent,
LocalResourceFile), Entities.Modules.Actions.ModuleActionType.AddContent, "", "",
EditUrl(), false, SecurityAccessLevel.Edit, true, false);
return Actions;
}
} #endregion
protected void btnselect_Click(object sender, EventArgs e)
{
FillDG();
FillUI();
}
}
}
data:
/// <summary>
/// 获取xxxxxx收入、应缴、实缴、尚欠金额统计json.
/// </summary>
/// <param name="where"></param>
/// <param name="DateA"></param>
/// <returns></returns>
public DataTable GetTosxxxChartsInfo(string where, string DateA)
{
DataTable dtchart = new DataTable();
dtchart.Columns.Add("jsons"); List<string> list1 = new List<string>();
List<decimal> list2 = new List<decimal>();
List<decimal> list3 = new List<decimal>();
List<decimal> list4 = new List<decimal>();
List<decimal> list5 = new List<decimal>(); DataTable dtbc = GetTosxxxViewInfo(where, DateA);//数据层-统计计算封装表
if (dtbc.Rows.Count > 0)
{
string Tosxxxname = "";
decimal Total2 = 0, Total3 = 0, Total4 = 0, Total5 = 0;
for (int t = 0; t < dtbc.Rows.Count; t++)
{
Tosxxxname = Convert.ToString(dtbc.Rows[t]["OAxxxxName"]);
Total2 = Convert.ToDecimal(dtbc.Rows[t]["xxxxIngahter"]);
Total3 = Convert.ToDecimal(dtbc.Rows[t]["xxxxAdminFee"]);
Total4 = Convert.ToDecimal(dtbc.Rows[t]["xxxAdminFee"]);
Total5 = Convert.ToDecimal(dtbc.Rows[t]["xxxxAdminFee"]);
list1.Add(Tosxxxname);
list2.Add(Total2);
list3.Add(Total3);
list4.Add(Total4);
list5.Add(Total5);
}
}
dtchart.Rows.Add(new object[] { Newtonsoft.Json.JsonConvert.SerializeObject(list1) });
dtchart.Rows.Add(new object[] { Newtonsoft.Json.JsonConvert.SerializeObject(list2) });
dtchart.Rows.Add(new object[] { Newtonsoft.Json.JsonConvert.SerializeObject(list3) });
dtchart.Rows.Add(new object[] { Newtonsoft.Json.JsonConvert.SerializeObject(list4) });
dtchart.Rows.Add(new object[] { Newtonsoft.Json.JsonConvert.SerializeObject(list5) });
return dtchart;
}
c#图标、显示图表、图形、json echarts实例 数据封装【c#】的更多相关文章
- JFreeChart与AJAX+JSON+ECharts两种处理方式生成热词统计可视化图表
本篇的思想:对HDFS获取的数据进行两种不同的可视化图表处理方式.第一种JFreeChar可视化处理生成图片文件查看.第二种AJAX+JSON+ECharts实现可视化图表,并呈现于浏览器上. 对 ...
- 在OAF页面中集成ECharts以及highcharts用于显示图表
历史博文中有讲解在请求中输出基础图表的方式,见地址:EBS 请求输出Html报表集成Echarts 本文讲述在OAF中集成这两类图表. 集成的基本思路:在OAF页面中加入一个rawText组件,在ra ...
- 【转】 C# ListView实例:文件图标显示
[转] C# ListView实例:文件图标显示 说明:本例将目录中的文件显示在窗体的ListView控件中,并定义了多种视图浏览.通过调用Win32库函数实现图标数据的提取. 主程序: 大图标: 列 ...
- 三大图表库:ECharts 、 BizCharts 和 G2,该如何选择?
最近阿里正式开源的BizCharts图表库基于React技术栈,各个图表项皆采用了组件的形式,贴近React的使用特点.同时BizCharts基于G2进行封装,Bizcharts也继承了G2相关特性. ...
- html+js+css+接口交互+echarts实例一枚
1. 解决了echarts的展现 2. 解决了echarts全屏幕展现(width:100%;height:100%;) 3. 解决了向接口取数据问题 <!DOCTYPE html> &l ...
- 10个Python 统计报表/图表图形类库
matplotlib,官网:http://matplotlib.sourceforge.net/,Matplotlib 是一个由 John Hunter 等开发的,用以绘制二维图形的 Python 模 ...
- Webstorm+Webpack+echarts构建个性化定制的数据可视化图表&&两个echarts详细教程(柱状图,南丁格尔图)
Webstorm+Webpack+echarts ECharts 特性介绍 ECharts,一个纯 Javascript 的图表库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(I ...
- Python导出Excel为Lua/Json/Xml实例教程(二):xlrd初体验
Python导出Excel为Lua/Json/Xml实例教程(二):xlrd初体验 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出E ...
- 10 款强大的JavaScript图表图形插件推荐
转自:http://www.iteye.com/news/24535 网上有很多用于绘制图表图形的免费JavaScript插件和图表库,这类插件大量出现的原因,一是人们不再依赖于Flash,二是浏览器 ...
随机推荐
- ASP.NET Core 学习笔记 第四篇 ASP.NET Core 中的配置
前言 说道配置文件,基本大多数软件为了扩展性.灵活性都会涉及到配置文件,比如之前常见的app.config和web.config.然后再说.NET Core,很多都发生了变化.总体的来说技术在进步,新 ...
- 进程间通信消息队列msgsnd执行:Invlid argument——万恶的经验主义
最近在搞进程间通信,首先在我的ubuntu 14.04上写了接口和测试demo,编译和执行都OK,,代码如下: 接口文件ipcmsg.h /* ipcmsg.h */ #ifndef H_MSGIPC ...
- Vue3学习(十)之 页面、菜单、路由的使用
一.前言 好几天没更文了,周末真的太冷了,在家躺了一天不爱动.今天给暖气了,相对不那么冷了,就可以继续更文了. 由文章标题不难看出,就是实现点击菜单跳转的意思,我写的很直白了,哈哈. 二.实现点击菜单 ...
- Docker 18.03 Centos7.6 安装 内网
首先访问https://download.docker.com/linux/centos/7/x86_64/stable/Packages/获取对应版本的rpm包docker包docker-ce-18 ...
- C++ 重载、重写、重定义的区别
C++ 中 重载.重写.重定义的区别 重载(overload) 定义: 在同一个作用域内,两函数的函数名相同, 参数不相同(可以是参数类型不同或者是参数个数不同), 那么就说这两个 函数重载. 分类: ...
- 为何我中断执行的线程不起作用,Why
摘要:我们就以一个案例的形式,来为大家详细介绍下为何中断执行的线程不起作用. 本文分享自华为云社区<明明中断了线程,却为何不起作用呢?>,作者:冰 河. 当我们在调用Java对象的wait ...
- SpringBoot 居然有 44 种应用启动器
啥是应用启动器?SpringBoot集成了spring的很多模块,比如tomcat.redis等等.你用SpringBoot搭建项目,只需要在pom.xml引入相关的依赖,和在配置文件中简单的配置就可 ...
- 『与善仁』Appium基础 — 9、补充:C/S架构和B/S架构说明
目录 1.C/S架构和B/S架构概念 2.C/S结构与B/S架构的区别 3.C/S架构和B/S架构优点和缺点 (1)B/S模式的优点和缺点: (2)C/S模式的优点和缺点: 1.C/S架构和B/S架构 ...
- Django笔记&教程 4-1 模型(Models)介绍
Django 自学笔记兼学习教程第4章第1节--模型(Models)介绍 点击查看教程总目录 参考:https://docs.djangoproject.com/en/2.2/topics/db/mo ...
- python tkinter实现俄罗斯方块 基础版
本项目最终效果见本人b站投稿av81480858 简介部分 本项目最终代码已上传github: https://github.com/BigShuang/Tetris 的1_BASIC文件夹 .其中1 ...