HighchartsJS 是一款功能强大、开源、美观、图表丰富、兼容绝大多数浏览器的纯js图表库,目前最新版本库是Highcharts 4.1.9。另外,HighchartsJS还提供很多的插件和第三方扩展,但那些不是本文所要描述的主要内容,在此不表。笔者只说说自己曾经使用过的案例以及对案例的注释。

笔者已经用HighchartsJS创建过两种关于统计类的图表实例,一种是点状的带标识的,如图:

另外一种是环形带标识的,如图:

下面是HighchartsJS创建环形图表实例代码:

引用(基于jq,jq和highcharts.js请自行去官网下载):

<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript" src="highcharts.js"></script>

HTML code:

<div id="chart" class="chart"></div>

CSS code:

<style>
*{margin:;padding:;}
.chart{height:600px;}
</style>

JS code:

<script>
$(function(){ //饼状图
var categories = ['财富定期', '消费理财', '财富快乐宝', '财富活期'],
data = [{
drilldown: {
name: '',
categories: ['财富定期', '消费理财', '财富快乐宝', '财富活期'],
data: [25, 25, 25, 25], //数据,即this.y
}
}]; // 创建数组
var fuhuiData = [];
var percentData = [];
for (var i = 0; i < data.length; i++) {
// 添加名称
fuhuiData.push({
name: categories[i],
y: data[i].y,
}); // 添加百分比
for (var j = 0; j < data[i].drilldown.data.length; j++) {
var brightness = 0.2 - (j / data[i].drilldown.data.length) / 5 ;
percentData.push({
name: data[i].drilldown.categories[j],
y: data[i].drilldown.data[j],
});
}
} // 创建图表
$('#chart').highcharts({
chart: {
type: 'pie' //图表的类型
},
title: { //设置标题并将标题置于环形图表中间
text: '<span style="font-size:50px;font-family:Arial;color:#606060;" >100.00</span><span style="color:#606060;"> 元</span>'+'<br><span style="font-size:18px;color:#606060;">总资产</span>',
verticalAlign: 'middle',
},
yAxis: {
title: {
text: ''
}
},
plotOptions: {
pie: {
size: '50%',
innerSize: '86%', //配置环形大小
shadow: false,
center: ['50%', '50%'], //水平和垂直方向居中
colors: [ //设置饼状图的颜色
'#f25252', //第一个颜色
'#9e6df0', //第二个颜色
'#f9823a', //第三个颜色
'#77aaee', //第三个颜色
],
dataLabels: {
//connectorColor: '#f00', //设置连接线的颜色
style: { //设置标识文字的样式
color: '#424242',
fontSize: '18px',
fontWeight: 'normal', //字体不加粗
},
}
}
},
tooltip: {
valueSuffix: '%'
},
series: [{
name: '百分比', //数据列名
data: percentData,
dataLabels: {
formatter: function() {
// display only if larger than 1
//return this.y > 1 ? '<b>'+ this.point.name +':</b> '+ this.y +'%' : null; //这串代码设置了加粗
return this.y > 1 ? ''+ this.point.name +': '+ this.y +'%' : null;
}
}
}],
credits: {
enabled:false, // 默认值,如果想去掉版权信息Highcharts.com,设置为false即可
}
}); //设置饼状图中间文字的上下间隔
$(".highcharts-title").find("tspan").last().attr("dy",43); }) </script>

点击下载HighchartsJS创建环形图表实例DEMO

HighchartsJS创建环形带标识的图表实例的更多相关文章

  1. HighchartsJS创建点状带标识的图表实例

    上一篇我发布的是关于 HighchartsJS创建环形带标识的图表实例, 从那篇文章就可以看出 HighchartsJS 确实是一款功能很强大的图表库.利用它,我们可以在项目中创建出我们所需要的图表来 ...

  2. php创建新用户注册界面布局实例

    php创建新用户注册界面布局实例 <!DOCTYPE> <html> <head> <title>Load page</title> < ...

  3. [转] 请别再拿“String s = new String("xyz");创建了多少个String实例”来面试了吧

    这帖是用来回复高级语言虚拟机圈子里的一个问题,一道Java笔试题的. 本来因为见得太多已经吐槽无力,但这次实在忍不住了就又爆发了一把.写得太长干脆单独开了一帖. 顺带广告:对JVM感兴趣的同学们同志们 ...

  4. Vue01 Vue介绍、Vue使用、Vue实例的创建、数据绑定、Vue实例的生命周期、差值与表达式、指令与事件、语法糖

    1 Vue介绍 1.1 官方介绍 vue是一个简单小巧的渐进式的技术栈,它提供了Web开发中常用的高级功能:视图和数据的解耦.组件的服用.路由.状态管理.虚拟DOM 说明:简单小巧 -> 压缩后 ...

  5. 使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(三)(错误整理篇)

    使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(一) 使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(二) 以上两篇已经把流 ...

  6. 使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(二)(代码篇)

    这篇是上一篇的延续: 用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(一) 源代码在github上可以下载,地址:https://github.com/guoxia ...

  7. 使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(一)

    梳理下使用spring+springMVC+mybatis 整合后的一个简单实例:输入用户的 ID,之后显示用户的信息(此次由于篇幅问题,会分几次进行说明,此次是工程的创建,逆向生成文件以及这个简单查 ...

  8. 请别再拿“String s = new String("xyz");创建了多少个String实例”来面试了吧---转

    http://www.iteye.com/topic/774673 羞愧呀,不知道多少人干过,我也干过,面壁去! 这帖是用来回复高级语言虚拟机圈子里的一个问题,一道Java笔试题的. 本来因为见得太多 ...

  9. 在 QML 中创建 C++ 导入类型的实例

    在 QML 中创建 C++ 导入类型的实例 文件列表: Project1.pro QT += quick CONFIG += c++ CONFIG += declarative_debug CONFI ...

随机推荐

  1. 第四篇:SOUI资源文件组织

    什么是资源? 现代的软件只要有UI,基本上少不了资源. 资源是什么?资源就是在程序运行时提供固定的数据源的文件. 在MFC当道的时代,资源一般就是位图(Bitmap),图标(Icon),光标(Curs ...

  2. 学生成绩管理系统[C]

    #include<stdio.h> #include<stdlib.h> #include<string.h> #include<conio.h> #d ...

  3. excel、csv、txt文件数据读取

    /// <summary> /// 读取Excel表每一行第一列的字符串集合 /// </summary> /// <param name="filePath& ...

  4. struct 类型重定义

    类型定义的那个头文件只需要在功能源文件里#include 开始在主函数源文件里也#include,所以出现了重定义

  5. 驱动中获取PsActiveProcessHead变量地址的五种方法也可以获取KdpDebuggerDataListHead

    PsActiveProcessHead的定义: 在windows系统中,所有的活动进程都是连在一起的,构成一个双链表,表头是全局变量PsActiveProcessHead,当一个进程被创建时,其Act ...

  6. Linux(centos)如何安装Zend Optimizer Zend Guard Loader

    很多php开源系统都是基于Zend Optimizer的,所以我们需要先安装Zend Optimizer.但在php5.3之后Zend Optimizer被Zend Guard Loader 取代了, ...

  7. service里面弹出对话框

    如何在service里面弹出对话框先给一个需求:需要在service里面监听短信的接收,如果接收到短信了,弹出一个dialog来提示用户打开. 看看效果图:(直接在主桌面上弹出) service中弹出 ...

  8. Linux学习笔记(15)shell基础之Bash基本功能

    1 shell概述 shell是一个命令解释器,为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序.用户可以用shell启动.挂起.停止甚至是编写一些程序. shell是一个功能强大 ...

  9. codeforces724-A. Checking the Calendar 日期题

    首先有这样一个显然的事实,那就是每个月的第一天可以是星期x,x可以取遍1~7 因为日期一直在往后退,总有一年能轮到分割线那天,因为本来其实压根就没有月份的划分,月份划分是人为的 而且我们也不知道开始的 ...

  10. nginx、php-fpm、mysql用户权限解析

    nginx本身不能处理PHP,它只是个web服务器.当接收到客户端请求后,如果是php请求,则转发给php解释器处理,并把结果返回给客户端.如果是静态页面的话,nginx自身处理,然后把结果返回给客户 ...