1-Python - pyecharts
about
Echarts是一个由百度开源的数据可视化,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可。而Python是一门富有表达力的语言,很适合用于数据处理。当数据分析遇上数据可视化时,pyecharts诞生了。
支持30多种图标,支持300多个中国城市和200多个国家和地区。
更多参考。
pyecharts分为v0.5.X
和v1
两个大版本,v0.5.X
和v1
间不兼容,v1
是一个全新的版本,详见ISSUE#892,ISSUE#1033。
也因此带来一个版本兼容问题,这会导致一些问题。
本文件示例以0.5x版本为主:
pip install pyecharts==0.5.11
# 豆瓣源
pip install -i https://pypi.doubanio.com/simple/ pyecharts==0.5.11
饼图
普通饼图:
import webbrowser # 用于自动打开生成的HTML文件
from pyecharts import Pie # 想用什么图,就对应导入什么类
attr = ['系统测试用例评审', '系统测试第1轮', '系统测试第1轮',
'系统测试第3轮', '用户手册评审', '验收测试', '其他(专项测试)', '现网运行']
value = [11, 22, 33, 22, 1, 1, 1, 9]
pie = Pie()
pie.add(
'缺陷按活动分布',
attr,
value,
is_label_show=True,
)
pie.render('pie.html') # 生成HTML文件
webbrowser.open('pie.html') # 自动调用浏览器打开
来个复杂点的:
import webbrowser
from pyecharts import Bar, Pie
attr = ['系统测试用例评审', '系统测试第1轮', '系统测试第1轮',
'系统测试第3轮', '用户手册评审', '验收测试', '其他(专项测试)', '现网运行']
value = [11, 22, 33, 22, 1, 1, 1, 9]
pie = Pie('Bug分布', title_pos='center') # 标题居中,默认居左
pie.add(
'缺陷按活动分布',
attr,
value,
is_label_show=True,
# 以下两个参数控制图例的位置, 默认是出现则顶部,水平居左
legend_pos='left', # 图例居左,right控制居右
label_text_color=None,
legend_orient='vertical' # 图例垂直
)
pie.render('pie.html')
webbrowser.open('pie.html')
柱状图
import webbrowser
from pyecharts import Bar, Pie
attr = ['需求规格说明书', '设计文档', '编码', '测试', '发布']
value = [8, 10, 18, 35, 103]
bar = Bar()
# bar.use_theme('dark') # 背景默认为白色的,dark为黑色
bar.add(
'软件缺陷在不同阶段发现时修复的费用',
attr,
value,
is_more_utils=True
)
bar.render('pie.html')
webbrowser.open('pie.html')
问题
下载安装后不能导入Pie等类的问题
使用pip install pyecharts
下载pyecharts
后,因为是默认最新版(测试是1.1.0
),你在正常的导入时,比如导入饼图Pie
,结果你会发现报错ImportError: cannot import name 'Pie'
。但通过测试pyecharts
的0.5.11
版本可以正常使用。
解决办法,在你的Python解释器的\Lib\site-packages\pyecharts\__init__.py
文件中,手动导入相关模块:
from pyecharts.charts import Bar, Grid, Pie, Map, WordCloud
然后,你就可以正常的在脚本中使用了。
或者下载指定版本:
pip install pyecharts==0.5.11
# 豆瓣源
pip install -i https://pypi.doubanio.com/simple/ pyecharts==0.5.11
欢迎斧正,that's all see also:[pyecharts官网](https://pyecharts.org/#/) | [关于pyecharts安装出现的问题(不能导入Bar,Grid等问题)](