pygal 是一个基于SVG的动态可视化Python库,该库枚举了各种常用不常用的图表类型,满足基本的可视化需求,可以画简单的地图。其特点是接口易用,有很多简化的写法,方便得绘制出统计图表,可以生成迷你图,有基本交互,不需要额外的语句,鼠标移动到图表上有文本标签强化效果。但图表不能直接渲染到notebook里,不能合并多个图,例如柱+折线形成复合图,因此使用范围还是比较有限。
绘图框架
一个很sexy的写法:
Matplotlib虽然提供了丰富而强大的接口用于数据的可视化,但在展现多类数据关系时,需要较多数据处理过程,语句就变得繁琐,因此seaborn针对这类需求,基于matplotlib提供了更高层的接口,擅长统计数据的可视化。seaborn可视化的写法和matplotlib基本相同。其代码框架如下:
1 | import seaborn as sns #导入seabron库 |
本文是《数据可视化实战:使用D3设计交互式图表》【1】的简要版读书笔记,通过约4000字概览如何用D3做可视化、实践从数据到图形的过程。D3是一个根据数据操纵文档的JavaScript库【2】,其全称Data-Driven Documents强调了这一点。D3的功能不止于做可视化,Documents代表可以在浏览器中展现的一切,包括HTML、SVG,根据数据操纵DOM(Document Object Model)可实现非常多的效果,但通常大家通常用D3来将数据映射为可视图形。
Matplotlib可以说是Python最声名远扬的可视化库了,也是Python数据分析库的“三驾马车”之一。Matplotlib是基础而非常强大的可视化库,Seaborn等好用的可视化库是在前者的基础上进行的封装。Matplotlib擅长快速出简单的图、有丰富的接口进行精细化绘图、和Numpy结合做科学可视化及三维图配合默契、三维图。但也有些缺点,如不容易基于实用目的绘制有一定难度的图表(如小提琴图等)、标签等元素需指定坐标而不能自适应优化显示、难以实现交互。
官网说:
Matplotlib tries to make easy things easy and hard things possible.
24点是指从去除大小王后的52张扑克牌中任取 4 张,通过「加、减、乘、除」四则运算得到 24。是一个历史悠久的趣味小游戏。
《数据化管理》书中在测试数据敏感度章节提到一个细节“每天上下班的路上,盯着公交车外看到的汽车尾部牌照玩24点”,去练运算能力。根据排列组合知识可以算出:在1-10的数字中任选4个,有C(13,4)=715种情况(因为数字可以重复,如[5,5,5,5],故不是直接从10个数中取4个的组合),从1-13中任选4个是C(16,4)=1820种情况,经过大佬门的枚举和推导,只考虑加减乘除,715种情况中,有566种有解,也就是79.16%的概率,而从1~13中选的1820种情况中是1362种情况下能算出24点,概率为74.83% 。