django項(xiàng)目用higcharts統(tǒng)計(jì)最近七天文章點(diǎn)擊量
下載higcharts插件放在static文件夾下
前端引入
<script src="/static/highcharts/highcharts.js"></script> <script src="/static/highcharts/modules/exporting.js"></script> <script src="/static/highcharts/modules/oldie.js"></script> <script src="/static/highcharts/highcharts-zh_CN.js"></script>
定義在頁面中的位置
<div id="container" style="min-width:400px;height:400px"></div>
前端js
<script> var chart = Highcharts.chart('container', { chart: { type: 'line' }, title: { text: '日點(diǎn)擊量和點(diǎn)贊量統(tǒng)計(jì)' }, subtitle: { text: '數(shù)據(jù)來源: terroristhouse.com' }, xAxis: { categories: {{ list_week_day|safe }} }, yAxis: { title: { text: '數(shù)量 (次)' } }, plotOptions: { line: { dataLabels: { // 開啟數(shù)據(jù)標(biāo)簽 enabled: true }, // 關(guān)閉鼠標(biāo)跟蹤,對(duì)應(yīng)的提示框、點(diǎn)擊事件會(huì)失效 enableMouseTracking: false } }, series: [{ name: '點(diǎn)擊量', data:{{ clicknum_list|safe }} }, { name: '點(diǎn)贊量', data: {{ praise_num_list|safe }} }] }); </script>
路由
# 點(diǎn)擊量統(tǒng)計(jì) re_path('article/click/', article.click,name='article/click/'),
后臺(tái)方法
from blog.utils import function # 點(diǎn)擊量 def click(request): recent_seven_days = function.recent_seven_days() list_week_day = recent_seven_days[::-1] # 進(jìn)行倒序 clicknum_list = [] praise_num_list = [] # print(list_week_day) for v in list_week_day: click_num_obj = Praise.objects.filter(click_addtime=v,click_sort=1).aggregate(clicknum=Count('click_sort')) praise_num_obj = Praise.objects.filter(click_addtime=v,click_sort=0).aggregate(praise_num=Count('click_sort')) # print(click_num_obj['clicknum'],praise_num_obj['praise_num']) clicknum = int(click_num_obj['clicknum']) if (click_num_obj['clicknum'] is not None) else 0 praise_num = int(praise_num_obj['praise_num']) if (praise_num_obj['praise_num'] is not None) else 0 clicknum_list.append(clicknum) praise_num_list.append(praise_num) # print(clicknum_list) # data=[{ # 'name': '點(diǎn)擊量', # 'data': clicknum_list # }, { # 'name': '點(diǎn)贊量', # 'data': praise_num_list # }] # num= [ '20190624', '20190625', '20190626', '20190627', '20190628', '20190629', '20190630'] return render(request,'article/click.html',locals())
應(yīng)用目錄下創(chuàng)建untils文件夾,并在其下創(chuàng)建function.py文件,用來獲取最近七天日期
# 七天日期 def recent_seven_days():# 通過for 循環(huán)得到天數(shù),如果想得到兩周的時(shí)間,只需要把8改成15就可以了。 import datetime d = datetime.datetime.now()#2019-6-28 9:25:43.843164 lists = [] for i in range(1,8):#i:1-7 oneday = datetime.timedelta(days=i) #1 day, 0:00:00 2 days, 0:00:00 ... 7 days, 0:00:00 day = d - oneday#2019-06-27 11:32:10.186535 2019-06-26 11:32:10.186535 ... 2019-06-21 11:32:10.186535 date_to = datetime.datetime(day.year, day.month, day.day)#2019-06-27 00:00:00 2019-06-26 00:00:00 ... 2019-06-21 00:00:00 lists.append(str(date_to)[0:10])#2019-06-27 2019-06-26 ... 2019-06-21 return lists
頁面效果
總結(jié)
以上所述是小編給大家介紹的django項(xiàng)目用higcharts統(tǒng)計(jì)最近七天文章點(diǎn)擊量,希望對(duì)大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!
相關(guān)文章
PyCharm安裝配置Qt Designer+PyUIC圖文教程
這篇文章主要介紹了PyCharm安裝配置Qt Designer+PyUIC圖文教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-05-05Tornado Web Server框架編寫簡易Python服務(wù)器
這篇文章主要為大家詳細(xì)介紹了Tornado Web Server框架編寫簡易Python服務(wù)器,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-07-07在Django框架中運(yùn)行Python應(yīng)用全攻略
這篇文章主要介紹了在Django框架中運(yùn)行Python應(yīng)用全攻略,在這之前必須搭建好簡單的視圖和模版,接下來便是本文中所述的核心內(nèi)容應(yīng)用配置,需要的朋友可以參考下2015-07-07python的setattr函數(shù)實(shí)例用法
在本篇文章里小編給大家整理了一篇關(guān)于python的setattr函數(shù)實(shí)例用法的相關(guān)知識(shí)點(diǎn)內(nèi)容,有興趣的朋友們學(xué)習(xí)下。2020-12-12python發(fā)qq消息轟炸虐狗好友思路詳解(完整代碼)
因?yàn)槲业哪硞€(gè)好友在情人節(jié)的時(shí)候秀恩愛,所以我靈光一閃制作了qq消息轟炸并記錄了下來。本文給大家分享python發(fā)qq消息轟炸虐狗好友思路詳解,感興趣的朋友一起看看吧2020-02-02解決Python paramiko 模塊遠(yuǎn)程執(zhí)行ssh 命令 nohup 不生效的問題
這篇文章主要介紹了解決Python paramiko 模塊遠(yuǎn)程執(zhí)行ssh 命令 nohup 不生效的問題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-07-07flask服務(wù)端響應(yīng)與重定向處理的實(shí)現(xiàn)
本文主要介紹了flask服務(wù)端響應(yīng)與重定向處理的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-03-03