科比职业生涯场均得分~django+chartjs数据可视化柱形

2020-04-30  本文已影响0人  小明的数据分析笔记本
参考youtube教程

https://www.youtube.com/watch?v=yRjteiImIWw&t=2489s

他做的是新冠病毒疫情数据可视化,还有一个很酷炫的地图,但是我还没有学会,今天记录柱形图的学习笔记

下面开始

django-admin startproject firstdashboard
cd firstdashboard
python manage.py startapp firstUI
image.png

firstUI文件加下新建urls.py文件,写入代码


image.png
python manage.py makemigrations
python manage.py migrate
python manage.py createsuperuser

启动服务器,登录后台输入数据

python manage.py runserver

数据来源 https://www.basketball-reference.com/players/b/bryanko01.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>My First dashboard</title>
    <script src="https://cdn.jsdelivr.net/npm/chart.js@2.8.0"></script>

    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
</head>
<body>

<div class="container">
    <h1>你好呀!</h1>
    <h1>{{ kobe }}</h1>

    <br>
    <br>
    <canvas id="myChart"></canvas>
    <br>
    <br>
    <script type="text/javascript" src="https://widgets.sports-reference.com/wg.fcgi?css=1&site=bbr&url=%2Fplayers%2Fb%2Fbryanko01.html&div=div_per_game"></script>
</div>

</body>


<script>
var ctx = document.getElementById('myChart').getContext('2d');
var chart = new Chart(ctx, {
    // The type of chart we want to create
    type: 'bar',

    // The data for our dataset
    data: {
        labels: {{ season | safe }},
        datasets: [{
            label: '科比职业生涯场均得分',
            backgroundColor: 'rgb(255, 0, 255)',
            borderColor: 'rgb(255, 215, 0)',
            data: {{ point | safe }}
        }]
    },

    // Configuration options go here
    options: {}
});
</script>

</html>
from django.shortcuts import render
from .models import Kobe

# Create your views here.

def index(request):
    kobe = Kobe.objects.all()
    season = []
    point = []
    for bryant in kobe:
        season.append(bryant.season)
        point.append(bryant.point)
    context = {'kobe':"Hello Kobe","season":season,"point":point}
    return render(request,'index.html',context=context)

启动服务器,输入网址
http://127.0.0.1:8000/dashboard/

最终效果


image.png

欢迎大家关注我的公众号
小明的数据分析笔记本

公众号二维码.jpg
上一篇 下一篇

猜你喜欢

热点阅读