chartkick 能够画 javascript 报表, 并且比較美观。可是网上搜了下。非常难找到 python 版本号的,于是查了些资料,摸索了下。

对 Flask 也不非常熟悉,这里就仅仅抛砖引玉了,假设有对这方面比較熟悉,还希望能贴点资料的链接。

chartkick简单介绍


Chartkick是一个图表绘制工具,特点是UI美观、使用简单,而且支持IE6在内的大多数浏览器。

之所以说它使用简单,是由于仅仅须要一行Ruby代码就可以绘制出美丽的图表!



Flask简单介绍


Flask是一个轻量级的Web应用框架, 使用Python编写。基于 WerkzeugWSGI工具箱和 Jinja2模板引擎。使用 BSD 授权。


代码结构





run.py


from flask import Flask, jsonify, render_template, request
import chartkick app = Flask(__name__, static_folder=chartkick.js())
app.jinja_env.add_extension("chartkick.ext.charts") @app.route('/')
@app.route('/index')
def index():
data = {'Chrome': 52.9, 'Opera': 1.6, 'Firefox': 27.7}
return render_template('index.html', data=data) if __name__ == "__main__":
app.run(debug=True)

index.html


index.html须要放在templates目录下

内容为

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script src="http://code.highcharts.com/highcharts.js"></script>
<script src="{{ url_for('static', filename='chartkick.js') }}"></script> {% bar_chart data with style="width:200px; height:20px;" %}
{% pie_chart data %}

效果


执行run.py,然后訪问所显示的地址



这里为 http://127.0.0.1:5000/

网页内容为




中文乱码解决方式


用 json 的 dumps 方法 将 dict 或者 list 转换成能够正常显示的中文字符串。

当中 

return render_template('index.html', data=data)

能够换成

return render_template('index.html', data=cCode.str(data))

cCode 是自己写的类,请參考《【python系列】dict、list的中文显示 》 http://blog.csdn.net/ksearch/article/details/35241019


參考资料


1. Create beautiful Javascript charts with minimal code https://github.com/mher/chartkick.py

3. flask高速上手  http://dormousehole.readthedocs.org/en/latest/quickstart.html

【python系列】python画报表(Chartkick、Flask)(附中文乱码解决方式)的更多相关文章

  1. 【Python】python3 正则爬取网页输出中文乱码解决

    爬取网页时候print输出的时候有中文输出乱码 例如: \\xe4\\xb8\\xad\\xe5\\x8d\\x8e\\xe4\\xb9\\xa6\\xe5\\xb1\\x80 #爬取https:// ...

  2. python cmd 窗口 中文乱码 解决方法 (附:打印不同颜色)

    python cmd 窗口 中文乱码 解决方法 (附:打印不同颜色) 前言 在 python 开发中,有时候想通过cmd窗口来和用户交互,比如显示信息之类的,会比自己创建 GUI 来的方便,但是随之而 ...

  3. 【转】Python BeautifulSoup 中文乱码解决方法

    这篇文章主要介绍了Python BeautifulSoup中文乱码问题的2种解决方法,需要的朋友可以参考下 解决方法一: 使用python的BeautifulSoup来抓取网页然后输出网页标题,但是输 ...

  4. python爬虫中文乱码解决方法

    python爬虫中文乱码 前几天用python来爬取全国行政区划编码的时候,遇到了中文乱码的问题,折腾了一会儿,才解决.现特记录一下,方便以后查看. 我是用python的requests和bs4库来实 ...

  5. Python系列-python文件操作

    原链接:https://blog.csdn.net/m0_37745438/article/details/79573414 python提供了一系列方法来对文件进行读取.写入等操作 一.打开文件的方 ...

  6. Python系列-python函数

    函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也可以自己创建函数,这 ...

  7. Python系列-python内置函数

    abs(x) 返回数字的绝对值,参数可以是整数.也可以是浮点数.如果是复数,则返回它的大小 all(iterable) 对参数中的所有元素进行迭代,如果所有的元素都是True,则返回True,函数等价 ...

  8. Python系列-python函数(functools)

    有一些函数内置到了functools这个模块里 partial(func, *args, **keywords) from functools import partial def add(x,y): ...

  9. Python和Ruby抓取网页时的中文乱码问题(在Eclipse和Apatana Studio下均是这种解决方法

    Python抓取中文网页乱码 :Eclipse+pydev2.2+python2.7  :Apatana Studio3+ pydev2.2+python2.7      run时设置 run--&g ...

随机推荐

  1. C++之类成员所占内存大小问题总结

    1.空类所占字节数为1,可见代码如下 #include <iostream> using namespace std; class Parent { }; class Child:publ ...

  2. Android服务之bindService源代码分析

    上一篇分析startService时没有画出调用ActivityManagerService之前的时序图,这里画出bindService的时序图.它们的调用流程是一致的. 先看ContextWrapp ...

  3. awk使用记录

    awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各 ...

  4. Tomcat 启动或者发布项目时提示Publishing failed:Resource /xxxx does not exist

    解决方法: 刷新一下项目,有可能是磁盘文件和Eclipse项目中文件不一致造成的. 重新启动eclipse 删除tomcat server 重新发布下即可

  5. EffectiveJava(16)复合优先于继承

    为什么复合优先于继承? 1.继承违反了封装原则,打破了封装性 2.继承会不必要的暴露API细节,称为隐患.比如通过直接访问底层使p.getProperty(K,V)的键值对可以不是String类型 3 ...

  6. A read-only user or a user in a read-only database is not permitted to disable

    A read-only user or a user in a read-only database is not permitted to disable 出现如题的问题通常是由于db.lck的所属 ...

  7. IO流(一)File类

    1.File类:表示文件和目录路径的抽象的表示形式,可以实现文件的创建,删除,重命名等,是唯一与文件本 有关的操作类. 2.File类的API定义:public class File extends ...

  8. MSSQL站库分离情况的渗透思路

    本文转自:http://bbs.blackbap.org/thread-6203-1-2.html 1. 服务器属内网环境,站库分离,通过web.config找到数据库服务库SA帐号密码,成功添加用户 ...

  9. C语言之基本算法33—矩阵的基本运算

    //矩阵基础 /* ================================================================== 题目:输入矩阵a,b,输出a,b,a的转置矩阵 ...

  10. 【Lucene】Apache Lucene全文检索引擎架构之入门实战1

    Lucene是一套用于全文检索和搜寻的开源程式库,由Apache软件基金会支持和提供.Lucene提供了一个简单却强大的应用程式接口,能够做全文索引和搜寻.在Java开发环境里Lucene是一个成熟的 ...