使用Pyecharts渲染图表

在anaconda prompt命令行工具下,通过pip清华镜像源安装pyecharts
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyecharts  

echarts官网:https://www.echartsjs.com/index.html
pyecharts官网:https://pyecharts.org/#/zh-cn/intro
pyecharts众多图表示例代码:https://gallery.pyecharts.org/#/README
pyecharts github项目国内镜像: https://gitee.com/mirrors/pyecharts

需求一:请用一张独立画布,柱形图和折线图融合在同一个坐标系展示表1数据

1.导入模块

#导入模块
from pyecharts import options as opts
#导入需要用到的图类表
from pyecharts.charts import Bar, Grid, Line  

2.准备数据

x_data = ['2014', '2015', '2016', '2017', '2018', '2019', '2020', '2021']
x1 = [87430,90912,96225,101885,107147,116390,105764,120215]
x2 = [7.40,4.00,5.83,5.81,5.16,8.63,-9.13,13.66]

3.调用add_xaxis()和add_yaxis()为柱形图添加x轴和y轴数据

series_name:系列的名称,显示于提示框和图例中

y_axis:系列的数据,在这里面加z=0,就可以让折线图在柱形图上面

bar = (
    Bar()
    .add_xaxis(x_data) 
    .add_yaxis(
                "诊疗量",
                v1, 
                z=0, 
                color="#5793f3"
                )
   

4.坐标轴配置项,坐标轴轴脊配置项,线条样式配置项,显示柱形图标签

    .extend_axis(
        yaxis=opts.AxisOpts(
                            name="同比增速(%)",
                            min_= -20, #前面要添加下划线,否则会报错
                            max_= 20,
                            axislabel_opts=opts.LabelOpts(formatter="{value}%"), 
                            axisline_opts=opts.AxisLineOpts 

5.线条样式配置项,显示柱形图标签,标题组件的配置项

       (
            linestyle_opts=opts.LineStyleOpts(color="#d14a61")
         ),
        )
     )
    .set_series_opts(label_opts=opts.LabelOpts(is_show=True))
    .set_global_opts 
    (
        yaxis_opts=opts.AxisOpts(
                                  ame="诊疗量(万人次)",
                                  axisline_opts=opts.AxisLineOpts(
                                  linestyle_opts=opts.LineStyleOpts(color="#5793f3")
                                  )),
        title_opts=opts.TitleOpts(title="2014-2021年中国中医类医疗卫生机构诊疗量"), 
        )
      )

6.创建实例,渲染图表

line = Line().add_xaxis(x_data).add_yaxis("同比增速", 
                                          x2, 
                                          yaxis_index=1,
                                          label_opts=opts.LabelOpts(is_show=True),
                                          symbol='triangle',
                                          symbol_size=15 )
bar.overlap(line)
bar.render_notebook()

完整代码

from pyecharts.charts import Bar, Line
from pyecharts.faker import Faker
from pyecharts import options as opts
x_data = ['2014', '2015', '2016', '2017', '2018', '2019', '2020', '2021']
x1 = [87430,90912,96225,101885,107147,116390,105764,120215]
x2 = [7.40,4.00,5.83,5.81,5.16,8.63,-9.13,13.66]
bar = (
    Bar()
    .add_xaxis(x_data) 
    .add_yaxis(
                "诊疗量",
                x1, 
                z=0, 
                color="#13ABDB"
                )
    .extend_axis(
        yaxis=opts.AxisOpts(
                            name="同比增速(%)",
                            min_= -20, #前面要添加下划线,否则会报错
                            max_= 20,
                            axislabel_opts=opts.LabelOpts(formatter="{value}%"), 
                            axisline_opts=opts.AxisLineOpts 
       (
            linestyle_opts=opts.LineStyleOpts(color="#134BDB")
         ),
        )
     )
    .set_series_opts(label_opts=opts.LabelOpts(is_show=True))
    .set_global_opts 
    (
        yaxis_opts=opts.AxisOpts(
                                  name="诊疗量(万人次)",
                                  axisline_opts=opts.AxisLineOpts(
                                  linestyle_opts=opts.LineStyleOpts(color="#13ABDB")
                                  )),
        title_opts=opts.TitleOpts(title="2014-2021年中国中医类医疗卫生机构诊疗量"), 
        )
      )

line = Line().add_xaxis(x_data).add_yaxis("同比增速", 
                                          x2, 
                                          yaxis_index=1,
                                          label_opts=opts.LabelOpts(is_show=True),
                                          symbol='triangle',
                                          symbol_size=15 )
bar.overlap(line)
bar.render_notebook()

图示

  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要在社区版PyCharm中使用Flask渲染Pyecharts图表,你可以遵循以下步骤: 1. 首先,确保你已经在PyCharm中创建了一个Flask项目,并安装了所需的依赖(包括Flask和Pyecharts)。 2. 创建一个Flask路由,用于处理请求和渲染图表。例如,可以在`app.py`文件中添加以下代码: ```python from flask import Flask, render_template from pyecharts import options as opts from pyecharts.charts import Bar app = Flask(__name__) @app.route('/') def index(): # 创建一个简单的柱状图 bar = Bar() bar.add_xaxis(["A", "B", "C", "D", "E"]) bar.add_yaxis("Series", [1, 3, 2, 5, 4]) # 渲染图表并返回HTML return render_template('index.html', chart=bar.render_embed()) if __name__ == '__main__': app.run() ``` 3. 在项目目录中创建一个名为`templates`的文件夹,在该文件夹中创建一个名为`index.html`的HTML模板文件。在模板文件中,你可以使用`chart`变量来插入Pyecharts图表渲染结果。例如: ```html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Flask Pyecharts</title> {{ chart }} </head> <body> <h1>Flask Pyecharts Example</h1> </body> </html> ``` 4. 运行Flask应用程序,并在浏览器中访问`http://localhost:5000`,你应该能够看到渲染Pyecharts图表和页面标题。 这样,你就可以在Flask中使用Pyecharts渲染图表了。根据你的需求,你可以自定义图表的样式和数据,以及在HTML模板中添加其他内容。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值