前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Django2.2+pyecharts的一个简单小例子~柱形图和世界地图

Django2.2+pyecharts的一个简单小例子~柱形图和世界地图

作者头像
用户7010445
发布2020-06-04 10:21:56
8270
发布2020-06-04 10:21:56
举报
文章被收录于专栏:小明的数据分析笔记本
参考资料
  • pyecharts的github主页
  • 官网实例
  • https://blog.csdn.net/Co_zy/article/details/89792279
  • https://www.cnblogs.com/wumingxiaoyao/p/8508060.html
以下是代码

首先创建项目项目、应用、在settings中注册

代码语言:javascript
复制
diango-admin startproject pyecharts_django_demo
cd pyecharts_django_demo
python manage.py startapp demo

按照官网说的在demo文件夹下新建templates文件夹,复制模板文件到这个目录下 配置路由

代码语言:javascript
复制
### pyecharts_django_demo目录下的url文件
from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('demo/',include('demo.urls',namespace='demo')),
]

### demo目录下的urls
from django.urls import path
from . import views

app_name = 'demo'

urlpatterns = [
    path('',views.index,name='index'),
]

视图函数

代码语言:javascript
复制
from django.shortcuts import render

from jinja2 import Environment, FileSystemLoader
from pyecharts.globals import CurrentConfig
from django.http import HttpResponse

CurrentConfig.GLOBAL_ENV = Environment(loader=FileSystemLoader("./demo/templates"))

from pyecharts import options as opts
from pyecharts.charts import Bar, Map
from pyecharts.faker import Faker


# Create your views here.

def index(request):
    bar_plot = (
        Bar()
        .add_xaxis(["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"])
        .add_yaxis("商家A", [5, 20, 36, 10, 75, 90])
        .add_yaxis("商家B", [15, 25, 16, 55, 48, 8])
        .set_global_opts(title_opts=opts.TitleOpts(title="Bar-基本示例", subtitle="我是副标题"))
    )
    bar_plot = bar_plot.render_embed()
    world_map = (
    Map()
    .add("", [list(z) for z in zip(Faker.country, Faker.values())], "world",is_map_symbol_show=False,is_roam=False)
    .set_series_opts(label_opts=opts.LabelOpts(is_show=False))
    .set_global_opts(
        title_opts=opts.TitleOpts(title="Map-世界地图"),
        visualmap_opts=opts.VisualMapOpts(max_=200))
    )
    world_map = world_map.render_embed()
    context = {'bar_plot':bar_plot,'world_map':world_map}
    return render(request,'demo/index.html',context=context)

配置模板文件

代码语言:javascript
复制
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>pyecharts加Django的小例子</title>
        <!-- CSS only -->
        <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.5.0/dist/css/bootstrap.min.css" integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" crossorigin="anonymous">
    </head>
    <body>
        <div class="container">
            <h1 style="color: crimson;">你好吗?</h1>
            {{ bar_plot | safe }}
        </div>
        <br>
        <div class="container">
            {{ world_map | safe }}
        </div>
    </body>
</html>

启动服务器

代码语言:javascript
复制
python manang.py runserver
最终效果
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-06-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小明的数据分析笔记本 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 参考资料
  • 以下是代码
  • 最终效果
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档