著作版权由作者李晓晖和网易共有,若转载请于彰着处标明出处:http://www.cnblogs.com/naaoveGIS/

到了2017和2018的交界处,又有诸多APP推出了年度总括H5,帮用户回顾一年来在APP上的多寡和移动轨迹,从前年博客园云音乐的年份回顾成为爆款起先,很多成品也看看了一个好的年度报告的影响力,纷纷模仿,但纵观2019年自家用的几款产品的年度报告,发现不同出品间的区别还真是不小,在作对照从前,我们不妨先来思考一下,APP做年度报告的目标是何许。

1.背景

在前头的博客中,我分别介绍了基于网格的长空引得(http://www.cnblogs.com/naaoveGIS/p/5148185.html)以及四叉树和网格结合的联合索引(http://www.cnblogs.com/naaoveGIS/p/6641449.html),要解决的问题均是判断一个点落在了面图层中的哪个面要素中。单从算法层面上分析,以上两种索引均有一些弊端:

a.网格索引由于对全体空间举行网格划分,即使划分粒度太细容易并发索引冗余,假若划分粒度太大则索引效用又宏大下跌。

    统计 1

b.四叉树索引同样存在一个图元标识被四个区域所提到,相应地囤积在六个叶子节点上,这样就存在索引的冗余,与网格索引存在一样的弊端。

        统计 2

为进一步优化索引,咱们决定使用R树来开展优化。

「年度报告的目标」

1、通过数量和轨迹展现,让用户发现自己这一年来对那款产品的依靠,无形中强调产品在用户生活中的重要性,同时给用户带来成就感,如支付宝年度账单总金额;

2、结合产品的特征和效用,通过对用户轨迹的分析,提取出打动用户心智的点,让用户有种“它实在懂我”的感到,戳中用户的心中,形成自觉转发,此处不举例了,因为各种年度总结都想感动用户,只是效果有差异;

3、满足用户的优越感、成就感和虚荣心,让用户由于炫耀意图而转向,形成口碑效应,如支付宝账单中的“全年总花费”区域名次、淘票票观影报告中的“”、QQ音乐的“播放次数抢先了x%的用户”等等。

接下去让大家来分析几款APP在年度报告上的显示:

2.R树介绍

R树紧要行使空间划分的眼光,即采取MBR(Minimal Bounding
Rectangle,最小边界矩形)的法门,从叶子结点最先用矩形(rectangle)将空间框起来,结点越往上,框住的空中就越大,以此对空中举办分割:

        统计 3

有着的原有空间要素均是叶节点,这样便不会产出如四叉树索引和网格索引中出现的半空中要素被三个索引段指导,进而出现大量冗余索引的问题。

「果壳网云音乐」

格局革新度★★★☆☆

界面设计★★★☆☆

语言美感★★★★☆

用户共鸣点★★★★☆

总评★★★☆☆(其实想给三星半的,半颗星打不出来)

微博云音乐陪你温暖同行

虎扑云音乐陪您温暖同行

用作年度报告的鼻祖,一贯坚持用户心绪互动的知乎云音乐2019年也交出了一份完整上还不错的答卷。界面的计划性风格偏向简约插画类型,画面的场地注重表现人与音乐的融合,色调的选料给人一种孤独但温和的感觉。在情节接纳上,除了年度歌手、听音乐时长这多少个自然有的内容,以及用于勾起用户记念的中午听的音乐内容之外,相比较有助益的是2017年听过最多的乐章,尽管总括的结果基本都是“爱”“心”“世界”“改变”,总结的准确性还无法确定,不过这么些词无论是哪个,都能让用户所有共鸣;此外相比能打动用户的,是一度喜欢但现行忘记的歌曲,那页内容充足抓住了众人听歌时候喜新厌旧的风味,而人们听得越来越少的歌也并不是因为不再喜欢,只是被逐级淡忘了,比如我的那一页是《凤凰花开的路口》,令人容易惦记起本科毕业的时节,一下子就激动了我。最后在言语风格上,乐乎云选用了用情侣的口气和用户对话,相比较能拉进和用户的距离,但也没怎么特别漂亮之处。总的来说,这份年度报告沿袭了果壳网云音乐从来以来的价值观和作风,也在朋友圈引起了一阵转会热潮。

3.遵照JTS的具体贯彻

JTS中提供了构建索引的不二法门,其可以构建四叉树索引、R树索引、KD索引等。这里,大家一贯动用JTS来构建R树索引。

JTS的介绍:https://en.wikipedia.org/wiki/JTS_Topology_Suite

JTS的源码下载:https://sourceforge.net/projects/jts-topo-suite/?source=navbar

「QQ音乐」

款式创新度★★★☆☆

界面设计★★★★☆

语言美感★★☆☆☆

用户共鸣点★★★☆☆

总评★★★☆☆

QQ音乐年度盘点

QQ音乐年度盘点

QQ音乐的年份盘点来得晚了些,然而看过将来意外地感觉到还不易。首先是界面的统筹很有时髦感和高级感,即利用了饱和度很高的肉色和枚黄色,也从未显示很丑,只是和QQ音乐代表性的桃色和黄色没什么关系,感觉可以用在任何一个APP里。在情节上,整个年度盘点偏向于数据导向,在享有的页面上都优秀了数字,更像一份行业的年份总计,更能满意用户的成就感和虚荣心,大题目语言简洁,基本不打心情牌,专心做总计。可以观望,QQ音乐不想给人一种模拟对手的痛感,与天涯论坛云音乐完全不同的品格也大功告成了不易的效用,只是出于尚未给用户带来情绪体验和共鸣,在转发度上相比微博云音乐就差了很多。

3.1R树的构建

采纳GT读取到本地的SHP,获取到拥有的要素集,然后遍历要素将envelope和要素信息一一插入至StrTree中,构建R树:

   统计 4

「支付宝」

花样立异度★★★★☆

界面设计★★★★☆

语言美感★★☆☆☆

用户共鸣点★★★★☆

总评★★★★☆

支付宝年度账单

支付宝年度账单

说起支付宝账单来我有些惆怅,明明那一个账单做得还不错,也在情侣圈成功刷了一波屏,偏偏搞出了一个什么默认可意芝麻信用协议的幺蛾子,最终反倒造成了不太好的震慑,降低了投机的信用度,让用户心中多了个疙瘩,真是划不来。所以本来想夸一夸支付宝的自己,现在也不想夸它了,再添加当时并未对支付宝账单的每一张截图,现在出了这事又找不到链接了,只可以简单解析一下。

支付宝2017的年度账单可以说是各方面均衡发展,在页面设计上用了壁画效果,色调也拔取了支付宝的代表性棕色,雅观又有特点。在情节上,大致总计了用户用在各地点消费的金额,最大的金额,出行、电影、外卖的消费金额等等,在各种页面的额设计上也特别十年磨一剑,在它的外出界面上看似是写了一句呼唤用户回家的话吧,具体内容也记不掌握了。我难得截图保留下去的第一张图的筹划是我很欣赏的感到,在一张街道图上显示了三个内容,营造了一个虚拟的花费现象重现;而第二张图的全年总消费则是在提拔用户不知不觉中在支付宝的巨大消费(⊙o⊙)…让你在剁手的羞耻感又夹杂着成就感,中正是用心良苦;最终即使本人一向不截图留念,可是刷爆朋友圈的那一张图其实是支付宝预测的2018着重词,什么“远方”“颜值”“范儿”等等,遵照用户各地点消费的百分比为用户举行归类,是个很不利的想法,也可以便宜未来做内容和广告分发了,bravo!

3.2依据R树的查询

将查询的空中条件构造成一个Envelope在R树中查询,对查询出来的结果再度开展点面关系判断:

   统计 5

「淘票票」

款式改进度★★★★★

界面设计★★★★☆

言语美感★★★★

用户共鸣点★★★★☆

总评★★★★☆(值得给四星半,留半颗星给它发展)

淘票票光影情书

淘票票光影情书

淘票票光影情书

作为一个骨干每一周都会去五遍影院,平日偶尔上豆瓣写个影评的不出名电影爱好者,我在淘票票刚刚推出时就下了APP,使用的过程中它更加让自家不止拿到小惊喜,所以它的功成名就自我觉得是理所应当的。从一开头察觉淘票票在买票未来的订单页面上,片名下方会显示片尾有多少个彩蛋,这但是深深感动了影迷的心,终于不用在看录像之前去百度,生怕错过菜单遗憾万年了;后来它在买票然后会自动弹出评论界面,可以扭转自己的观影海报,海报图片仍可以转移,算是很用心的享受界面了。

再次回到正题,来说说他家的年度报告,首先在主题上就比其他产品更用心,整个年度报告围绕“光影情书”的核心设计,从镜头、语言风格到关注的始末,都无比符合一个暗恋者的角度,整个情书的计划非常联结。其图表内容的用心,语言上的动人度都令人赞扬不已,在内容上,采取了情书中更易于反映的第一相遇,生日、新年这种具有回想意义的小日子,第一次写影评等等。除此之外,其中的一页“看过的视频里现身最多的艺人”也是个极高明的计划性,竟然还……吃醋了?我服我服。淘票票在拍用户马屁的时候也很有艺术感,比如“《铁道飞虎》我们都说好,你只给了3.0分。这就是你,不随波逐流,永远有投机的论断和看法。”综上所述,淘票票的年度报告在众多产品中确确实实显得很用心,紧紧抓住了影迷用户痛点。

4.优化

在我们事先的三种索引方法中,大家均将引得文件保留到了本土,每一次调用时去加载索引,如此IO是一个很大的瓶颈。现在大家创立一个器皿,将StrTree保存至该容器中。查询时,直接从内存中获取到该树。

「豆瓣电影」

模式革新度★★☆☆☆

界面设计★★☆☆☆

语言美感★☆☆☆☆

用户共鸣点★★★☆☆

总评★★☆☆☆

豆瓣观影报告

豆子观影报告

豆类的2017观影报告可以说是“一手好牌打烂”的经文案例了,从各地点来看都没事儿值得赞美和感动人心的地方,完全就是一个淡淡而没什么创意的告诉,聊胜于无。然则豆瓣又是一个影视爱好者的聚集地,很三人看过影视之后的首先件事就是到豆瓣上评个分写写影评,虽然豆瓣的网页界面很少有经验的显然提升,很五个人依旧不会遗弃它。作为一个电影的大数量平台,豆瓣原本可以看重多年来对影迷的刺探,搞出一份很懂影迷的年度报告来,长久地留下这一批活跃的文艺青年的心,但是很心痛,豆瓣的答卷分数比前边的有所app都低。

首先谈界面设计,看书面页大家发现,豆瓣是想要走老一套复古影院的风格,但这一个配色我就不是很懂了,继续看下来你会意识,前面的每一页都同一,而且都…不太窘迫。内容的挑三拣四也并不是很不错,因为豆类其实对大多数普通用户而言,并不是一个交际平台,我们上豆瓣是去精通电影和评分的,不是去加好友的,所以出于自家的豆子没什么好友,就出现了和本身口味最相似和最不同的是同一个人这种bug,而在此之前我关系的拥有APP,几乎都有一个筛选功效,也就是对此用户并未记录的始末就不出示,比如我从没在半夜三更给影片评分过,我的年度报告上不会冒出“你从未在半夜三更评分”那种似是而非的始末,而是换成了其他有想念意义的情节。我想,豆瓣并不曾做个性化的显示,以这种程度而言应该大部分用户的告诉情节都是千篇一律的呢。最终,语言下边就更没什么可圈可点的地点了,所有的情节用的都是干巴巴的陈述句,“2017自己标记最多的饰演者是XXX”,诸如此类。每一页的花花世界有一句不同的话,看起来还都是莫名其妙的歌词,可以说是很对不起豆瓣“文艺”的标签了。

豆类的观影报告现身的时日很晚,带给用户的也惟有相比较下的失望。

5.效能相比较

「总结」

对待了五款不等用途APP的年度报告,咱们发现要想实现一份能读懂用户、直达用户心中并且让用户愿意主动转发的告诉并不是一件易事,而年度报告是一个极好的贺词营销时机,还足以让成品借助大数额进一步了然用户,但这从没一个有益无害的加分项。对用户而言,当不同的产品都起来用年度报告拉拢他的时候,用户就会自觉地在心尖举行自查自纠,此时这多少个不够用心,槽点满满的产品就要小心了,用户可能会在心里对成品减分并且宣扬出去以显示他们的灵气和审美。


p.s.这是第一次写自己关于互联网产品的探究,写完之后感觉有点地点可能太过主观了,假若能在做一些调研将来再去分析,结果也许会晤理一些。希望自己将来能有更多考虑和出现,对产品有更灵敏的认识,在平日生活中有意地磨炼自己的成品合计和能力。

2018.1.13

5.1查询效能比较

在测试数据中当选一个特殊点(两个多边形的交接处):

   统计 6

 

分别对使用的三种索引举办了性能相比较:

a.本地网格索引:

   统计 7

b.本地混合索引(四叉树与网格索引整合):

 统计 8

c.内存R树索引:

 统计 9

可见查询效率快了一倍左右。

5.2索引构建效率比较

样本数量有2000多少个面要素,在此之前的两种索引均使用当地工具构建,时间大体是1S左右(没有现实总结)。现在选用JTS构建R树索引,效能为:

   统计 10

5.3占有的内存效率

此索引的优化中,大家将数据总体存入了内存。这里不可不察看内存的占用量有多大。

诚如监控内具备三种方法,通过工具查看或者代码段编写。代码段编写可以经过行使SizeOf.jar实现,工具查看可以透过jvisualvm实现:

   统计 11

土生土长的当地SHP数据大小为:3.8M。

网格索引大小为:4.4M。

混合索引文件的高低为:8.4M。

而读入内存中的R树索引的轻重缓急为:4.3M。

出于我们存储了要素所蕴藏的持有音讯,理论上,如若大家将积存音讯进而回落,内存占用会更小。近来来看,SHP数据本身的轻重缓急,会跟存入内存的音讯大小有一向关乎。

6.总结

当下目录方式任然有几点不足:

a.索引构建中的要素获取模式为地点SHP读取,需要扩充成对第三方服务数量的协理。

b.当R数查询命中唯有一个元素时,因为小小的矩形的界定是过量等于实际要素范围的,所以还要开展一遍点面判断。如此,当图层要素个数本身不多时,建立索引不肯定可以加快。

 

                             —–欢迎转载,但保留版权,请于显著处标明出处:http://www.cnblogs.com/naaoveGIS/

                                                                             
如若你认为本文确实帮助了您,能够微信扫一扫,进行小额的打赏和鼓励,谢谢
^_^

                                                                   
                     
统计 12