HighchartsNET快速图表控件-开源
2024-10-19 02:22:40
前言:
HighchartsNET快速图表控件,基于Highcharts的asp.net web控件。只需几行代码你就能快速生成一个图表。
从此不再担心图表复杂。简单几行代码就可以搞定,节省大量工作时间。
内置Highcharts ,但仅限个人学习使用,如需商业,请遵守Highcharts Licensing。
控件特色:
支持DataBind() 与微软其他数据控件一样直接DataBind() 数据源支持DataTable DataSet。
无需添加引用,内置Highcharts jQuery。
Github:https://github.com/linezero/HighchartsNET
下面我来介绍一下使用方法:
使用方法:
首先将HighchartsNET.dll 添加到项目引用。
在页面上注册HighchartsNET
<%@ Register TagPrefix="Zero" Namespace="HighchartsNET" Assembly="HighchartsNET" %>
然后在页面上添加一个HighchartsNET控件
<Zero:HighCharts runat="server" ID="highcharts1" Title="柱状图"/>
最后在Page_Load 里添加绑定代码即可
//上面部分只是模拟数据
DataTable dt = new DataTable();
dt.Columns.Add("a");
dt.Columns.Add("b");
DataRow dr = dt.NewRow();
dr[] = "2013/1";
dr[] = "";
dt.Rows.Add(dr);
DataRow dr1 = dt.NewRow();
dr1[] = "2013/2";
dr1[] = "";
dt.Rows.Add(dr1); //图表只需这部分代码
highcharts1.Type = HighchartsNET.ChartType.Column;
highcharts1.DataKey = "a";
highcharts1.DataValue = "b";
highcharts1.YAxis = "降雨量(mm)";//Y轴的值;
highcharts1.Tooltip = "valueSuffix: 'mm'";
highcharts1.DataName = "武汉";
highcharts1.Legend = true;//是否显示标示,默认为false
highcharts1.DataSource = dt;
highcharts1.DataBind();
最终效果图如下:
非常简单即可生成你所需要的图表。已在实际项目中实践,感觉非常方便。
属性说明:
/// <summary>
/// 图表标题
/// </summary>
[Description("图表标题")]
public string Title { get; set; }
/// <summary>
/// 图表类型
/// </summary>
public ChartType Type { get; set; }
/// <summary>
/// 图表2级标题
/// </summary>
public string SubTitle { get; set; } /// <summary>
/// 数据对象
/// </summary>
public ChartsSeries Series { get; set; } /// <summary>
/// 一些附加选项
/// </summary>
public string PlotOptions { get; set; }
/// <summary>
/// X轴选项
/// </summary>
public List<object> XAxis { get; set; }
/// <summary>
/// Y轴选项 默认可以只填名称
/// </summary>
public string YAxis { get; set; } /// <summary>
/// 提示格式
/// </summary>
public string Tooltip { get; set; }
/// <summary>
/// 图表层id(容器)
/// </summary>
public string DivId { get; set; } /// <summary>
/// 图标下方标识是否显示 默认不显示
/// </summary>
public bool Legend { get; set; } /// <summary>
/// 高级功能,多个数据集,多条图表,饼图不需要。
/// </summary>
public List<ChartsSeries> SeriesList { get; set; } public override Unit Width
{
get
{
return base.Width;
}
set
{
base.Width = value;
}
} public override Unit Height
{
get
{
return base.Height;
}
set
{
base.Height = value;
}
} private bool noscript = true;
/// <summary>
/// 是否自动引用脚本,默认为true 设为false即需要手动添加js引用
/// </summary>
public bool NoScript
{
get { return noscript; }
set { noscript = value; }
} public string DataKey { get; set; }
public string DataValue { get; set; }
public object DataSource { get; set; }
public object DataName { get; set; }
更多详细的例子,请参看:https://github.com/linezero/HighchartsNET
感悟:
这个是在去年的这个时候折腾的,今天公布出来,只是为了让大家更方便的去实现所需要的图表,节省代码时间,远离加班。
如果你有什么建议,或者bug 请到 https://github.com/linezero/HighchartsNET/issues 提交。
如果你觉得本文对你有帮助,请点击“推荐”,谢谢。
最新文章
- ECMAScript 5中属性的特性值
- 【C#公共帮助类】JsonHelper 操作帮助类, 以后再也不用满地找Json了,拿来直接用
- plsql配置
- vim - char code and charset
- 文件权限及特殊权限管理SUID、SGID和Sticky
- 如何用css画出三角形
- ORA-04031案例一则
- sql server 2008 评估期已过期如何升级
- Android ListView动态更新数据
- .NET 中String类功能分类概述
- 能让你成为更优秀程序员的10个C语言资源
- java 根据时间生成唯一id
- OS调度算法常用摘要
- html标签对应的英文原文 - 司徒正美
- mysql trigger
- oracle跨库连接查询
- Python【每日一问】05
- oracle多个结果集拼接字符串;where id in 字符串 (转)
- 解决PuTTY中文乱码
- MySQL数据库自动备份
热门文章
- python字符串的使用
- Linux堆内存管理深入分析(上)
- UI控件(UITextField)
- 那些证书相关的玩意儿(SSL,X.509,PEM,DER,CRT,CER,KEY,CSR,P12等)
- [译]Kinect for Windows SDK开发入门(十八):Kinect Interaction交互控件
- Linux LVM逻辑卷
- 论HTML5 Audio 标签歌词同步的实现
- 学习Cassandra的开源电子书(中英文版)
- Oozie 快速入门
- String Aop 动态代理例子