相思资源网 Design By www.200059.com
下载higcharts插件放在static文件夹下
前端引入
<script src="/UploadFiles/2021-04-08/highcharts.js">定义在页面中的位置
<div id="container" style="min-width:400px;height:400px"></div>前端js
<script> var chart = Highcharts.chart('container', { chart: { type: 'line' }, title: { text: '日点击量和点赞量统计' }, subtitle: { text: '数据来源: terroristhouse.com' }, xAxis: { categories: {{ list_week_day|safe }} }, yAxis: { title: { text: '数量 (次)' } }, plotOptions: { line: { dataLabels: { // 开启数据标签 enabled: true }, // 关闭鼠标跟踪,对应的提示框、点击事件会失效 enableMouseTracking: false } }, series: [{ name: '点击量', data:{{ clicknum_list|safe }} }, { name: '点赞量', data: {{ praise_num_list|safe }} }] }); </script>路由
# 点击量统计 re_path('article/click/', article.click,name='article/click/'),
后台方法
from blog.utils import function # 点击量 def click(request): recent_seven_days = function.recent_seven_days() list_week_day = recent_seven_days[::-1] # 进行倒序 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': '点击量', # 'data': clicknum_list # }, { # 'name': '点赞量', # 'data': praise_num_list # }] # num= [ '20190624', '20190625', '20190626', '20190627', '20190628', '20190629', '20190630'] return render(request,'article/click.html',locals())应用目录下创建untils文件夹,并在其下创建function.py文件,用来获取最近七天日期
# 七天日期 def recent_seven_days():# 通过for 循环得到天数,如果想得到两周的时间,只需要把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页面效果
总结
以上所述是小编给大家介绍的django项目用higcharts统计最近七天文章点击量,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
相思资源网 Design By www.200059.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
相思资源网 Design By www.200059.com
暂无django项目用higcharts统计最近七天文章点击量的评论...
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。