学习参考菜鸟网站:http://www.runoob.com/highcharts/highcharts-tutorial.html

我是通过后端返回设备数据,进行前端出图,效果如下:

代码如下:

django后台:

 def ft_index(request):
if request.method == 'GET':
"""列表以字符串方式返回前端,返回结果如:[1,1,1,1]"""
idc_info = []
esxi_obj = models.EsxiTbl.objects.filter(IdcName=IDC_Info['FT'])
idc_info.append(len(esxi_obj))
vm_num = 0
dt_num = 0
net_num =0
for e_obj in esxi_obj:
vm_num = len(e_obj.vmachinetbl_set.all())
vm_num += vm_num
dt_num = len(e_obj.datastoretbl_set.all())
dt_num += dt_num
net_num = len(e_obj.networktbl_set.all())
net_num += net_num
idc_info.append(vm_num)
idc_info.append(dt_num)
idc_info.append(net_num)
return render(request, 'ft_index.html', {'num': json.dumps(idc_info)})

前端代码如下:

 # 这里把后端的数据渲染到前端,然后在通过JS代码进行出图
<div id="init_data" style="display: none;">{{ num }}</div>
<div id="data_graph" style="width: auto; height: 700px; margin: 0 auto">
</div>

前端JS代码如下:

<script src="/static/plugin/nifty/js/jquery-2.1.1.min.js"></script>
<script src="/static/js/highcharts.js"></script>
<script src="/static/js/highcharts-3d.js"></script>
# 以上3个js插件可以参考菜鸟网站下载
<script>
$(document).ready(function () {
var chart = {
type: 'column',
margin: 175,
options3d: {
enabled: true,
alpha: 15,
beta: 15,
depth: 100
}
};
var title = {
text: '机房资源3D图',
style: {
fontSize: '30px;',
color: '#000000',
}
};
var subtitle = {
text: ''
};
var xAxis = {
{# categories: Highcharts.getOptions().lang.shortMonths#}
categories: ['ESXI主机数', '虚拟机数', '存储数', '网络数'],
{# title: {#}
{# text:'sfsdfasf',#}
{# },#}
gridLineWidth: 0,
lineWidth: 0,
};
var yAxis = {
title: {
text: null
},
{# gridLineWidth: 0,#}
{# lineWidth: 0,#}
};
var series = [{
name: '资源数量总数',
# 下面这行就是从页面内获取具体的数据,将字符串转换为列表
data: JSON.parse($('#init_data').text())
}]; var json = {};
json.chart = chart;
json.title = title;
json.subtitle = subtitle;
json.xAxis = xAxis;
json.yAxis = yAxis;
json.series = series;
$('#data_graph').highcharts(json);
});
</script>

Highcharts 动态制作3D柱状图的更多相关文章

  1. echart.gl.js实现动态3D柱状图

    echart.gl.js实现动态3D柱状图 一.总结 一句话总结:演示页面的源代码里面一定有所需的所有的js. 二.[js实践篇]——echart.gl.js实现动态3D柱状图 前言 本公司的项目需求 ...

  2. 3-Highcharts 3D图之3D柱状图分组叠堆3D图

    <!DOCTYPE> <html lang='en'> <head> <title>3-Highcharts 3D图之3D柱状图分组叠堆3D图</ ...

  3. 2-Highcharts 3D图之3D柱状图带可调试倾斜角度

    <!DOCTYPE> <html lang='en'> <head> <title>2-Highcharts 3D图之3D柱状图带可调试倾斜角度< ...

  4. 1-Highcharts 3D图之普通3D柱状图与带空值

    <!DOCTYPE> <html lang='en'> <head> <title>1-Highcharts 3D图之普通3D柱状图与带空值</t ...

  5. 网页特效:用CSS3制作3D图片立方体旋转特效

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  6. ZAM 3D 制作3D动画字幕 用于Xaml导出

    原地址-> http://www.cnblogs.com/yk250/p/5662788.html 介绍:对经常使用Blend做动画的人来说,ZAM 3D 也很好上手,专业制作3D素材的XAML ...

  7. 制作3D图片立方体旋转特效

    <!DOCTYPE html><html><head><meta charset="utf-8" /><title>CS ...

  8. 3D语音天气球(源码分享)——通过天气服务动态创建3D球

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 开篇废话: 这个项目准备分四部分介绍: 一:创建可旋转的"3D球":3 ...

  9. WPF用SkewTransform画3D柱状图

    WPF用SkewTransform画3D柱状图 SkewTransform主要是对控件实现一种2-D扭曲,具体内容可以查看以下链接: http://msdn.microsoft.com/zh-cn/l ...

随机推荐

  1. 数据库-SQL语法:LEFT JOIN

    LEFT JOIN 关键字会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行.(补充:left join是一对多的关系,表里所有符合条件的记 ...

  2. bootstrap历练实例:按钮作为输入框组前缀或后缀

    <!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...

  3. EXTJS中文乱码

    在<head>中加入 <meta http-equiv="Content-Type" content="text/html; charset=GB231 ...

  4. js获取主机名实现页面跳转

    <script language="javascript" type="text/javascript">        var hostname ...

  5. Emmet:HTML/CSS代码快速编写神器--20150422

    Emmet的前身是大名鼎鼎的Zen coding,如果你从事Web前端开发的话,对该插件一定不会陌生.它使用仿CSS选择器的语法来生成代码,大大提高了HTML/CSS代码编写的速度,比如下面的演示: ...

  6. NGINX宏观手记

    一.这里的优化主要是指对nginx的配置优化,一般来说nginx配置文件中对优化比较有作用的主要有以下几项: nginx进程数,建议按照cpu数目来指定,一般跟cpu核数相同或为它的倍数. ``` w ...

  7. Redis原理及集群相关知识

    读书笔记 <Redis开发与运维 > Redis使用场景 作为缓存层 减少对Mysql的压力 计数功能 比如使用原子命令incr 共享Session 设置过期时间 可以限制短信接口等调用 ...

  8. python基础知识14-正则表达式

    1.正则表达式 正则可以代替其他任何工具,但是其他工具不能完全代替正则. 1.匹配或提取字符串的工具,基于所有语言之上的工具. 正则表达式所面向的问题 判断一个字符串是否匹配给定的格式,如判断用户注册 ...

  9. Python中threading的join和setDaemon的区别[带例子]

    python的进程和线程经常用到,之前一直不明白threading的join和setDaemon的区别和用法,今天特地研究了一下.multiprocessing中也有这两个方法,同样适用,这里以thr ...

  10. Linux下安装Oracle客户端

    1.创建用户名和组名 /usr/sbin/groupadd oinstall /usr/sbin/groupadd dba /usr/sbin/useradd -m -g oinstall -G db ...