新書推薦:
《
我和抑郁症的3000天
》
售價:NT$
301.0
《
与骸骨交谈:我希望每一个真相都被发现
》
售價:NT$
347.0
《
人体使用手册3:自愈力的逻辑(全面解读身体面对疾病时的反应逻辑,学习更多有效的系列家庭按摩)
》
售價:NT$
281.0
《
素描简史:从文艺复兴到现代艺术
》
售價:NT$
1989.0
《
智慧宫丛书028·神工智能 诸神与古代世界的神奇造物
》
售價:NT$
398.0
《
街头健身训练指南
》
售價:NT$
1214.0
《
留学早规划
》
售價:NT$
347.0
《
文化的演化:民众动机正在重塑世界
》
售價:NT$
403.0
|
編輯推薦: |
这是一本前所未见的数据可视化入门书,颜值极高。姜伟生博士自谦“小镇做题家”,实际上他是国际著名金融企业的金融科技专家。很难想象一位以“术数”为业的金融家具备如此彻底的分享动机,同时,姜博士有着卓越的艺术品位和设计能力,不仅承担了这套书的精深内容,更承担了全系图书的整体设计。希望读者从枯燥的常规数学书中解脱出来,赏心悦目地慢慢走入缤纷的AI宇宙。
|
內容簡介: |
《可视之美:数据可视化 数学艺术 学术绘图 Python创意编程》是“鸢尾花数学大系:从加减乘除到机器学习”丛书中编程板块的第二册。编程板块第一册《编程不难》着重介绍如何零基础入门Python编程,《可视之美:数据可视化 数学艺术 学术绘图 Python创意编程》则在《编程不难》基础之上深入探讨如何用Python完成数学任务及板块数据可视化。
《可视之美:数据可视化 数学艺术 学术绘图 Python创意编程》是本系列中的一本真正意义上的“图册”。内容覆盖科技制图、计算机图形学、创意编程、趣味数学实验、数学科学、机器学习等。《可视之美:数据可视化 数学艺术 学术绘图 Python创意编程》“毫无节制”地展示数学之美,而且提供特别实用且容易复制的创作思路、做图技巧、编程代码。
《可视之美:数据可视化 数学艺术 学术绘图 Python创意编程》包含8个板块共36章内容。前5个板块(共18章)专注于各种可视化手段,是可视化中的“术”;后3个板块(共18章)选取了18个话题来展示数学之美,是可视化中的“艺”,阅读这18章时,请关注每个可视化方案的创意思路、作图技巧、数学工具。
《可视之美:数据可视化 数学艺术 学术绘图 Python创意编程》读者群包括程序员、科技制图开发者、高级数据分析师、机器学习开发者、创意编程开发者、计算机图形学研究者。
|
關於作者: |
姜伟生 博士 FRM。
热爱知识可视化和开源分享。自2022年8月开始,在GitHub上开源“鸢尾花书”学习资源,截至2024年5月,已经分享5000多页PDF、5000多幅矢量图、约3000个代码文件,全球读者数以万计,GitHub全球排名TOP119。
|
目錄:
|
Contents
目录
绪论 1
第 1章 数学 艺术 7
1.1 数学 艺术 8
1.2 物质世界是几何的世界 8
1.3 数学 艺术 人工智能 11
1.4 解构 重构:形而上者谓之道,形而下者谓之器 12
1.5 师法自然 14
1.6 模式 随机:戴着枷锁翩翩起舞 15
1.7 宇宙之道 17
第2章 说图 21
2.1 一图胜千言 22
2.2 了解规则:戴着枷锁跳舞 24
2.3 头脑风暴:知识网络 25
2.4 编程实现:Python 有大作为 32
2.5 美化完善:优化默认效果 32
2.6 后期制作:丰富图片细节 34
2.7 发布传播:到什么山上唱什么歌 34
第3章 布局 43
3.1 图形对象 44
3.2 使用 subplot 45
3.3 使用 add_subplot 46
3.4 使用 subplots 47
3.5 使用 GridSpec 53
3.6 使用 add_gridspec 54
第4章 装饰 65
4.1 艺术家 66
4.2 图脊 67
4.3 图轴 71
4.4 注释 75
4.5 视角 76
4.6 风格 76
第 5章 色彩空间 83
5.1 色彩 84
5.2 RGB 色彩空间 88
5.3 HSV 色彩空间 90
第6章 颜色映射 103
6.1 颜色映射 104
6.2 可视化色谱 106
6.3 创建色谱 108
第7章 二维散点图 123
7.1 二维散点图 124
7.2 样本数据 126
7.3 使用面具 128
第 8章 二维线图 133
8.1 点动成线 134
8.2 阶跃图 136
8.3 火柴图 137
8.4 参考线 138
8.5 使用面具 139
8.6 特殊点线 139
8.7 渲染 140
第 9章 极坐标绘图 147
9.1 线图 148
9.2 散点图 148
9.3 柱状图 149
9.4 等高线 149
第10章 二维等高线 153
10.1 网格数据 154
10.2 等高线 158
10.3 三角剖分 162
第11章 热图和其他 169
11.1 热图 170
11.2 伪彩色网格图 171
11.3 非矢量图片 172
第12章 平面几何图形 181
12.1 使用 patches 绘制平面几何形状 182
12.2 填充 185
第 13章 三维散点图 197
13.1 三维散点图 198
13.2 展示更多特征 201
13.3 可视化三元概率分布 204
第14章 三维线图 213
14.1 线图 214
14.2 火柴图 220
第15章 网格曲面 223
15.1 网格曲面 224
15.2 在三维平面展示四维数据 227
15.3 其他可视化方案 228
第16章 三维等高线 239
16.1 沿三个方向获取等高线 240
16.2 特定等高线 243
16.3 可视化四维数据 247
第17章 箭头图 261
17.1 向量 262
17.2 箭头 264
17.3 向量场 267
第18章 立体几何 277
18.1 绘制几何体的几种方法 278
18.2 用等高线绘制三维几何体 281
18.3 Plotly 的三维可视化方案 281
第 19章 数列 293
19.1 什么是数列? 294
19.2 斐波那契数列 294
19.3 巴都万数列 295
19.4 雷卡曼数列 296
19.5 数列求和极限 296
第 20章 函数 303
20.1 函数 304
20.2 一次函数 305
20.3 其他几个函数示例 309
第 21章 二次型 323
21.1 二元二次型 324
21.2 三元二次型 331
第 22章 隐函数 349
22.1 二元隐函数 350
22.2 三元隐函数 353
第 23章 参数方程 363
23.1 参数方程 364
23.2 球坐标 366
第 24章 复数 375
24.1 复数 376
24.2 复变函数 381
第 25章 距离 395
25.1 欧氏距离 396
25.2 其他距离度量 397
第 26章 平面几何变换 407
26.1 常见几何变换 408
26.2 仿射变换 409
26.3 投影 412
第 27章 立体几何变换 421
27.1 立体几何变换 422
27.2 四种常用几何变换 426
第 28章 奇异值分解 439
28.1 什么是奇异值分解? 440
28.2 2 × 2 方阵 441
28.3 3 × 3 方阵 443
28.4 3 × 2 细高矩阵 446
28.5 2 × 3 矮胖矩阵 449
第 29章 瑞利商 461
29.1 什么是瑞利商? 462
29.2 二元瑞利商 463
29.3 在单位圆上看二元瑞利商 464
29.4 在单位球上看三元瑞利商 465
29.5 平面上看三元瑞利商 468
29.6 球面等高线展示三元瑞利商 471
第 30章 心形线 481
30.1 心形线 482
30.2 模数乘法表 484
第 31章 模式 随机 501
31.1 模式 随机 502
31.2 贝叶斯推断 504
第 32章 Dirichlet分布 527
32.1 什么是 Dirichlet 分布 528
32.2 降维投影到平面 529
32.3 将等高线投影到斜面上 530
32.4 重心坐标系 532
32.5 重心坐标系展示 Dirichlet 分布 536
第 33章 贝塞尔曲线 551
33.1 贝塞尔曲线 552
33.2 一阶 552
33.3 二阶 553
33.4 三阶 555
33.5 三维空间 555
33.6 鸢尾花曲线 556
第 34章 繁花曲线 563
34.1 繁花曲线 564
34.2 内旋轮线 564
34.3 外旋轮线 566
第 35章 分形 571
35.1 分形 572
35.2 Koch 雪花 572
35.3 谢尔宾斯基三角形 573
35.4 Vicsek 正方形分形 574
35.5 龙曲线 574
35.6 巴恩斯利蕨 574
35.7 毕达哥拉斯树 575
35.8 曼德博集合 575
35.9 朱利亚集合 576
第 36章 网络图 591
36.1 网络图 592
|
內容試閱:
|
Preface
前言
感谢
首先感谢大家的信任。
作者仅仅是在学习应用数学科学和机器学习算法时,多读了几本数学书,多做了一些思考和知识 整理而已。知者不言,言者不知。知者不博,博者不知。由于作者水平有限,斗胆把自己有限所学所 思与大家分享,作者权当无知者无畏。希望大家在 B 站视频下方和 GitHub 多提意见,让“鸢尾花数 学大系—从加减乘除到机器学习 ”丛书成为作者和读者共同参与创作的优质作品。
特别感谢清华大学出版社的栾大成老师。从选题策划、内容创作到装帧设计,栾老师事无巨细、 一路陪伴。每次与栾老师交流,都能感受到他对优质作品的追求、对知识分享的热情。
出来混总是要还的
曾经,考试是我们学习数学的唯一动力。考试是头悬梁的绳,是锥刺股的锥。我们中的绝大多数 人从小到大为各种考试埋头题海,学数学味同嚼蜡,甚至让人恨之入骨。
数学给我们带来了无尽的“折磨”。 我们甚至恐惧数学,憎恨数学,恨不得一走出校门就把数学 抛之脑后,老死不相往来。
可悲可笑的是,我们很多人可能会在毕业五年或十年以后,因为工作需要,不得不重新学习微积分、 线性代数、概率统计,悔恨当初没有学好数学,走了很多弯路,没能学以致用,甚至迁怒于教材和老师。
这一切不能都怪数学,值得反思的是我们学习数学的方法和目的。
再给自己一个学数学的理由
为考试而学数学,是被逼无奈的举动。而为数学而学数学,则又太过高尚而遥不可及。
相信对于绝大部分的我们来说,数学是工具,是谋生手段,而不是目的。我们主动学数学,是想 用数学工具解决具体问题。
现在,本丛书给大家带来一个学数学、用数学的全新动力—数据科学、机器学习。
数据科学和机器学习已经深度融合到我们生活的方方面面,而数学正是开启未来大门的钥匙。不
是所有人生来都握有一副好牌,但是掌握“数学 编程 机器学习 ”的知识绝对是王牌。这次,学习 数学不再是为了考试、分数、升学,而是为了投资时间,自我实现,面向未来。
未来已来,你来不来?
本丛书如何帮到你
为了让大家学数学、用数学,甚至爱上数学,作者可谓颇费心机。在丛书创作时,作者尽量克服 传统数学教材的各种弊端,让大家学习时有兴趣、看得懂、有思考、更自信、用得着。
为此,丛书在内容创作上突出以下几个特点。
虽然本书标榜“从加减乘除到机器学习”, 但是建议读者朋友们至少具备高中数学知识。如果读 者正在学习或曾经学过大学数学 (微积分、线性代数、概率统计) ,那么就更容易读懂本丛书了。
聊聊数学
数学是工具 。锤子是工具,剪刀是工具,数学也是工具。
数学是思想 。数学是人类思想高度抽象的结晶。在其冷酷的外表之下,数学的内核实际上就是人 类朴素的思想。学习数学时,知其然,更要知其所以然。不要死记硬背公式、定理,理解背后的数学 思想才是关键。如果你能画一幅图,用大白话描述清楚一个公式、一则定理,这就说明你真正理解了它。
数学是语言 。就好比世界各地不同种族有自己的语言,数学则是人类共同的语言和逻辑。数学这 门语言极其精准,高度抽象,放之四海而皆准。虽然我们中大多数人没有被数学“女神 ”选中,不能 为人类对数学认知开疆拓土,但是这丝毫不妨碍我们使用数学这门语言。就好比,我们不会成为语言 学家,但是我们完全可以使用母语和外语交流。
数学是体系 。代数、几何、线性代数、微积分、概率统计、优化方法等,看似一个个孤岛,实际 上它们都是由数学网络连接起来的。建议大家学习时,特别关注不同数学板块之间的联系,见树, 更要见林。
数学是基石 。拿破仑曾说:“数学的日臻完善和国强民富息息相关。”数学是科学进步的根基, 是经济繁荣的支柱,是保家卫国的武器,是探索星辰大海的航船。
数学是艺术 。数学和音乐、绘画、建筑一样,都是人类艺术体验。通过可视化工具,我们会在看 似枯燥的公式、定理、数据背后,发现数学之美。
数学是历史,是人类共同记忆体。“历史是过去,又属于现在,同时在指引未来。”数学是人类
II
的集体学习思考,它把人的思维符号化、形式化,进而记录、积累、传播、创新、发展。从甲骨、泥 板、石板、竹简、木牍、纸草、羊皮卷、活字印刷字模、纸张,到数字媒介,这一过程持续了数千年, 至今绵延不息。
数学是无穷无尽的想象力,是人类的好奇心,是自我挑战的毅力,是一个接着一个的问题,是看 似荒诞不经的猜想,是一次次胆大包天的批判性思考,是敢于站在前人臂膀之上的勇气,是孜孜不倦 地延展人类认知边界的不懈努力。
家园、诗、远方
诺瓦利斯曾说:“哲学就是怀着一种乡愁的冲动到处去寻找家园。”
在纷繁复杂的尘世,数学纯粹得就像精神的世外桃源。数学是一束光、一条巷、一团不灭的希望、 一股磅礴的力量、一个值得寄托的避风港。
打破陈腐的锁链,把功利心暂放一边,我们一道怀揣一份乡愁,心存些许诗意,踩着艺术维度, 投入数学张开的臂膀,驶入它色彩斑斓、变幻无穷的深港,感受久违的归属,一睹更美、更好的远方。
前言
《可视之美》
III
Acknowledgement
致谢
To my parents.
谨以此书献给我的母亲和父亲。
How to Use the Book
使用本书
丛书资源
本系列丛书提供的配套资源有以下几个。
在纸质图书中,为了方便大家查找不同配套资源,作者特别设计了以下几个标识。
数学家、科学家、
艺术家等语录
配套Python代码完
成核心计算和制图
引出本书或本系列
其他图书相关内容
相关数学家生平贡
献介绍
代码中核心Python 库函数和讲解
用Streamlit开发制
作App
提醒读者格外注意 的知识点
每章结束总结或升 华本章内容
思维导图总结本章
脉络和核心内容
介绍数学工具、机
器学习之间的联系
每章配套微课视频
二维码
本书核心参考文献和
推荐阅读文献
微课视频
本书配套微课视频均发布在B站—生姜DrGinger。
微课视频是以“聊天 ”的方式,和大家探讨某个数学话题的重点内容,讲解代码中可能遇到的难 点,甚至侃侃历史,说说时事,聊聊生活。
本书配套微课视频的目的是引导大家自主编程实践、探究式学习,并不是“照本宣科”。
纸质图书上已经写得很清楚的内容,视频课程只会强调重点。需要说明的是,图书内容不是视频 的“逐字稿”。
App开发
本书配套多个用Streamlit开发的App ,用来展示数学动画、数据分析、机器学习算法。
Streamlit是个开源的Python库,能够方便、快捷地搭建、部署交互型网页App 。Streamlit简单易 用,很受欢迎。Streamlit兼容目前主流的Python数据分析库,比如NumPy 、Pandas 、Scikit-Learn 、 PyTorch 、TensorFlow等。Streamlit还支持Plotly 、Bokeh 、Altair等交互可视化库。
本书中很多App设计都采用Streamlit Plotly方案。此外,本书专门配套教学视频手把手和大家一 起做App。
大家可以参考如下页面,更多地了解Streamlit:
实践平台
本书作者编写代码时采用的IDE (Integrated Development Environment) 是Spyder ,目的是给大家提 供简洁的Python代码文件。
但是,建议大家采用JupyterLab或Jupyter Notebook作为“鸢尾花书 ”配套学习工具。
简单来说,Jupyter集“浏览器 编程 文档 绘图 多媒体 发布 ”众多功能于一身,非常适 合探究式学习。
运行Jupyter无须IDE ,只用到浏览器。Jupyter容易分块执行代码。Jupyter支持inline打印结果,直 接将结果图片打印在分块代码下方。Jupyter还支持很多其他语言,如R和Julia。
使用Markdown文档编辑功能,可以在编程的同时写笔记,不需要额外创建文档。在Jupyter中插 入图片和视频链接都很方便,此外还可以插入LaTex公式。对于长文档,可以用边栏目录查找特定 内容。
Jupyter发布功能很友好,方便打印成HTML 、PDF等格式文件。
Jupyter也并不完美, 目前尚待解决的问题有几个:Jupyter中代码调试不是特别方便。Jupyter没 有variable explorer ,可以在线打印数据,也可以将数据写到CSV或Excel文件中再打开。Matplotlib 图像结果不具有交互性,如不能查看某个点的值或者旋转3D图形,此时可以考虑安装 (Jupyter
VI
Matplotlib) 。注意,利用Altair或Plotly绘制的图像支持交互功能。对于自定义函数, 目前没有快捷键 直接跳转到其定义。但是,很多开发者针对这些问题正在开发或已经发布相应插件,请大家留意。
大家可以下载安装Anaconda ,将JupyterLab 、Spyder 、PyCharm等常用工具,都集成在Anaconda 中。下载Anaconda的地址为:
JupyterLab探究式学习视频:
代码文件
本书的Python代码文件下载地址为:
同时也在如下GitHub地址备份更新:
Python代码文件会不定期修改,请大家注意更新。图书原始创作版本PDF(未经审校和修订,内容
和纸质版略有差异,方便移动终端碎片化学习以及对照代码)和纸质版本勘误也会上传到这个GitHub 账户。因此,建议大家注册GitHub账户,给书稿文件夹标星 (Star) 或分支克隆 (Fork)。
考虑再三,作者还是决定不把代码全文印在纸质书中,以便减少篇幅,节约用纸。
本书编程实践例子中主要使用“鸢尾花数据集”, 数据来源是Scikit-Learn库、Seaborn库。要是 给“鸢尾花数学大系 ”起个昵称的话,作者乐见“鸢尾花书”。
使用本书
《可视之美》
VII
学习指南
大家可以根据自己的偏好制定学习步骤,本书推荐如下步骤。
1
浏览本章思维导图, 把握核心脉络
4
用Jupyter 创建笔
记,编程实践
2
下载本章配套
Python 代码文件
5
尝试开发数学动画、 机器学习 App
3
观看微课视频,阅 读本章正文内容
6
翻阅本书推荐参
考文献
学完每章后,大家可以在社交媒体、技术论坛上发布自己的Jupyter笔记,进一步听取朋友们的意 见,共同进步。这样做还可以提高自己学习的动力。
另外,建议大家采用纸质书和电子书配合阅读学习。学习主阵地在纸质书上,学习基础课程最重 要的是沉下心来,认真阅读并记录笔记;电子书可以配合查看代码,相关实操性内容可以直接在电脑 上开发、运行、感受,还可以同步记录Jupyter笔记。
强调一点:学习过程中遇到困难,要尝试自行研究解决,不要第一时间就去寻求他人帮助。
意见和建议
欢迎大家对“鸢尾花书 ”提意见和建议,丛书专属邮箱地址为:
也欢迎大家在B站视频下方留言互动。
|
|