python---图表的使用
一:使用预览

二:插件使用来源
Highcharts(本次使用)
ECharts
三:插件的使用
(一)后台传递数据
getHchart方法获取用户数据(用户名,数据列表)
def getHchart(self):
user_list = models.User.objects.filter()
user_data = []
for user in user_list:
cursor = connections['default'].cursor()
#在数据库语句中使用字符串格式化需要两个%%,在python语言中使用一个%
cursor.execute("""select strftime('%%s',strftime("%%Y-%%m-",ptime))*1000,count(id) from repository_trouble where processer_id = %s GROUP BY strftime("%%Y-%%m",ptime)""",[user.nid])
result = cursor.fetchall() #数据列表
user_data.append({
'name':user.username,
'data':result
})
return user_data
数据格式:
[
{'name': '山上有风景', 'data': [(, ), (, ), (, )]},
{'name': '宁静致远', 'data': [(, ), (, ), (, ), (, )]},
{'name': '蜡笔小新', 'data': []},
{'name': '你大爷', 'data': []},
{'name': '但是', 'data': []}
]
(二)将数据Json化,传递到前端后的处理方法
.导入js文件
<script src="/static/plugins/Highcharts-6.1.0/code/highcharts.js"></script>
.创建一个DOM容器
<div id="container" style="min-width:400px;height:400px"></div>
.图表配置
<script>
var chart = null; Highcharts.setOptions({
global:{
useUTC:false
}
}) config = {
chart: {
type: 'spline' #设置图表类型
},
title: {
text: '报障数据统计' #标题设置
},
subtitle: {
text: '数据来源: 127.0.0.1(来源本地)' #子标题
},
xAxis: { #X轴配置
type:"datetime",
dateTimeLabelFormats:{
year:"%Y",
month:"%Y-%m",
},
title:{
text:null
}
},
yAxis: { #Y轴配置
title: {
text: '报障数量'
}
},
credits:{ #版权
enabled: false // 禁用版权信息
},
plotOptions: {
line: {
dataLabels: {
enabled: true // 开启数据标签
},
enableMouseTracking: false // 关闭鼠标跟踪,对应的提示框、点击事件会失效
}
},
} $(function(){
$.ajax({
url:"/backend/trouble-hchart.html",
type:"POST",
data:{'csrfmiddlewaretoken': '{{ csrf_token }}'},
dataType:"json",
success:function(data){
config['series']=data
chart = Highcharts.chart('container', config); #设置图表的数据
}
})
}) </script>
python---图表的使用的更多相关文章
- Python图表绘制:matplotlib绘图库入门
		
matplotlib 是Python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地行制图.而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中. 它的文档相当完备,并 ...
 - Python图表绘制:matplotlib绘图库入门(转)
		
matplotlib 是Python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地行制图.而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中. 它的文档相当完备,并 ...
 - Python图表库Matplotlib 组成部分介绍
		
图表有很多个组成部分,例如标题.x/y轴名称.大刻度小刻度.线条.数据点.注释说明等等. 我们来看官方给的图,图中标出了各个部分的英文名称 Matplotlib提供了很多api,开发者可根据需求定制图 ...
 - Python图表数据可视化Seaborn:4. 结构化图表可视化
		
1.基本设置 import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns ...
 - Python图表数据可视化Seaborn:3. 线性关系数据| 时间线图表| 热图
		
1. 线性关系数据可视化 lmplot( ) import numpy as np import pandas as pd import matplotlib.pyplot as plt import ...
 - Python图表数据可视化Seaborn:2. 分类数据可视化-分类散点图|分布图(箱型图|小提琴图|LV图表)|统计图(柱状图|折线图)
		
1. 分类数据可视化 - 分类散点图 stripplot( ) / swarmplot( ) sns.stripplot(x="day",y="total_bill&qu ...
 - Python图表数据可视化Seaborn:1. 风格| 分布数据可视化-直方图| 密度图| 散点图
		
conda install seaborn 是安装到jupyter那个环境的 1. 整体风格设置 对图表整体颜色.比例等进行风格设置,包括颜色色板等调用系统风格进行数据可视化 set() / se ...
 - 如何解决python 图表中文显示乱码问题(matlplotlib 包)
		
目前搜到的是,下载一个字体到程序路径,设置成默认字体. https://blog.csdn.net/irene_loong/article/details/68955485 #图表显示中文设置 im ...
 - Python图表绘制Matplotlib
		
引入 import numpy as npimport pandas as pdimport matplotlib.pyplot as plt# 导入相关模块 使用 # 图表窗口1 → plt.sho ...
 - python日期格式化与绘图
		
画一个量随着时间变化的曲线是经常会遇到的需求,比如画软件用户数的变化曲线.画随时间变化的曲线主要用到的函数是matplotlib.pyplot.plot_date(date,num).由于其第一个变量 ...
 
随机推荐
- unix网络编程——I/O多路复用之epoll
			
1. 基本概念 当程序进行IO时,如果数据尚未准备好,那么IO将处于阻塞状态.当某个进程有多个打开的文件,比如socket,那么其后的所有准备好读写的文件将受到阻塞的影响而不能操作.不借助线程,单一进 ...
 - 交换机、linux光衰查询
			
RX收光,TX发光 一.交换机 命令: display interface transceiver brief 结果: ...... HW6851 10GE1/0/15 transceiver dia ...
 - js dom学习
			
创建dom元素 var oLi = document.creteElement('li'); //创建livar aLi = oUl.getElementsByTagName('li');oLi.in ...
 - Two Sum III - Data structure design
			
Design and implement a TwoSum class. It should support the following operations: add and find. add - ...
 - SOA (面向服务的架构)-Service Oriented Architecture
			
SOA (面向服务的架构) 编辑 面向服务的架构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来.接口是采用中立的方式进行定义的,它应该独立 ...
 - Gulp 项目简单构建,自动刷新页面
			
/** * Created by 1900 on 12/18/2015. */ var plugins={ fs:require("fs"), gulp:require(" ...
 - 利用ZooKeeper简单实现分布式锁
			
1.分布式锁的由来: 在程序开发过程中不得不考虑的就是并发问题.在java中对于同一个jvm而言,jdk已经提供了lock和同步等.但是在分布式情况下,往往存在多个进程对一些资源产生竞争关系,而这些进 ...
 - matlab dist函数
			
dist——欧式距离加权函数(Euclidean distance weight function) 语法: Z = dist(W,P) df = dist('deriv') D = di ...
 - 转:关于python文件操作大全
			
转自:http://www.cnblogs.com/rollenholt/archive/2012/04/23/2466179.html python中对文件.文件夹(文件操作函数)的操作需要涉及到o ...
 - 【题解】CF#896 D-Nephren Runs a Cinema
			
容易发现这些 vip 用户并没什么用,所以考虑枚举手持50元与100元的人共有多少个.设手持50元的人 \(a\) 个,手持100元的人 \(a - k\) 个,那么一共是 \(2*a - k\) 个 ...