本帖最后由 马涌河畔 于 2021-5-6 11:18 编辑

pyecharts基于百度的开源可视化项目Echars, 支持30多种常见图表, 支持Jupyter Notebook 和 JupyterLab。
本帖尝试基于官方文档用pyecharts画各种图表并记录下来。
后面会尝试不用测试数据, 而直接用集搜客采集软件集搜客文本分词和情感分析软件输出的数据。
举报 使用道具
| 回复

共 3 个关于本帖的回复 最后回复于 2021-5-6 10:23

沙发
马涌河畔 金牌会员 发表于 2021-5-6 10:17:32 | 只看该作者
本帖最后由 马涌河畔 于 2021-5-6 10:18 编辑

安装: pip install pyecharts
环境配置和库的导入:
  1. from pyecharts.globals import CurrentConfig, NotebookType, ThemeType
  2. CurrentConfig.NOTEBOOK_TYPE = NotebookType.JUPYTER_NOTEBOOK

  3. from pyecharts import options as opts
复制代码


举报 使用道具
板凳
马涌河畔 金牌会员 发表于 2021-5-6 10:20:50 | 只看该作者
一个柱状图的示例:
  1. from pyecharts.charts import Bar

  2. bar = Bar()
  3. bar.add_xaxis(["衬衫", "毛衣", "领带", "裤子", "风衣", "高跟鞋", "袜子"])
  4. bar.add_yaxis("商家A", [114, 55, 27, 101, 125, 27, 105])
  5. bar.add_yaxis("商家B", [57, 134, 137, 129, 145, 60, 49])
  6. bar.set_global_opts(title_opts=opts.TitleOpts(title="某电商平台销售情况"))

  7. bar.render_notebook()
复制代码


举报 使用道具
地板
马涌河畔 金牌会员 发表于 2021-5-6 10:23:56 | 只看该作者
多饼图的示例:
  1. from pyecharts.charts import Pie
  2. from pyecharts.commons.utils import JsCode

  3. fn = """
  4.     function(params) {
  5.         if(params.name == '其他')
  6.             return '\\n\\n\\n' + params.name + ' : ' + params.value + '%';
  7.         return params.name + ' : ' + params.value + '%';
  8.     }
  9.     """

  10. def new_label_opts():
  11.     return opts.LabelOpts(formatter=JsCode(fn), position="center")

  12. c = (
  13.     Pie()
  14.     .add(
  15.         "",
  16.         [list(z) for z in zip(["剧情", "其他"], [25, 75])],
  17.         center=["20%", "30%"],
  18.         radius=[60, 80],
  19.         label_opts=new_label_opts(),
  20.     )
  21.     .add(
  22.         "",
  23.         [list(z) for z in zip(["奇幻", "其他"], [24, 76])],
  24.         center=["55%", "30%"],
  25.         radius=[60, 80],
  26.         label_opts=new_label_opts(),
  27.     )
  28.     .add(
  29.         "",
  30.         [list(z) for z in zip(["爱情", "其他"], [14, 86])],
  31.         center=["20%", "70%"],
  32.         radius=[60, 80],
  33.         label_opts=new_label_opts(),
  34.     )
  35.     .add(
  36.         "",
  37.         [list(z) for z in zip(["惊悚", "其他"], [11, 89])],
  38.         center=["55%", "70%"],
  39.         radius=[60, 80],
  40.         label_opts=new_label_opts(),
  41.     )
  42.     .set_global_opts(
  43.         title_opts=opts.TitleOpts(title="Pie-多饼图基本示例"),
  44.         legend_opts=opts.LegendOpts(
  45.             type_="scroll", pos_top="20%", pos_left="80%", orient="vertical"
  46.         ),
  47.     )
  48.     .render_notebook()
  49. )
复制代码


举报 使用道具
您需要登录后才可以回帖 登录 | 立即注册

精彩推荐

  • Gephi社会网络分析-马蜂窝游记文本分词并同
  • Gephi社会网络分析-基于马蜂窝游记文本以词
  • 知乎话题文本根据词语间距筛选后生成共词矩
  • 马蜂窝游记文本分词后以词语间距为筛选条件
  • 学习使用apriori算法挖掘关联关系

热门用户

GMT+8, 2024-4-27 10:21