《Python数据可视化快速入门到精通》是一本侧重介绍各种数据可视化工具+案例的Python数据可视化图书,为了保证读者可以学以致用,在实践方面循序渐进地进行3个层次的实践:基础知识实践、进阶知识实践和综合应用实践。 本书全面介绍了数据可视化知识,从学习到实践的角度出发,以帮助读者快速掌握Python各种数据可视化工具,既可以学习,又可以作为查询工具。本书通过各种实例、案例,将每一款数据可视化工具的使用与实际应用相结合,力求使读者短时间内掌握多款数据可视化工具,畅游职场。 全书共分15章,主要分为3个篇章,即基础篇、提高篇和案例篇。 基础篇:包括认识数据可视化、搭建Python数据可视化环境以及Python基础绘图工具。 提高篇:是基础篇的提升,包括Python各种数据可视化工具的介绍与使用,如Matplotlib的进阶应用、Pandas内置绘图大全、Seaborn图表、第三方图表Pyecharts、Plotly图表、Bokeh图表。 案例篇:基于不同技术方向的实用案例,包括Matplotlib+Pandas实现商业图表之渐变饼形图、Matplotlib+NumPy实现商业图表之对比分析双向柱形图、Matplotlib+Animation实现动态图表、Matplotlib+Pandas+PyQt5实现嵌入交互式图表、Matplotlib+NumPy实现趣味绘图。 本书提供大量丰富的资源,力求为读者打造一本基础+应用+实践一体化、精彩的Python数据可视化工具书。 本书不仅适合初学者、入行数据分析人员、与数据打交道(与数据相关)人员、对数据感兴趣的人员,也适合从事其他岗位想掌握数据可视化工具的职场人员。
庞大的数据堆积在你面前,显然不如图表来得直观、清晰,正所谓“一图胜千言”。 Python语言简单易学、数据处理简单高效,对于初学者来说容易上手。在科学计算、数据分析、数学建模和数据挖掘等方面,Python占据了越来越重要的地位。另外,Python第三方扩展库不断更新,在数据可视化方面也提供了大量的工具。 本书侧重各种Python数据可视化工具的介绍与实践,主要包括基础绘图工具Turtle,最常用的Matplotlib,用于统计分析的Seaborn,以及适合网页应用的第三方图表Pyecharts、Plotly图表和Bokeh图表。为保证读者学以致用,循序渐进地进行3个层次的篇章介绍:基础篇、提高篇和案例篇。 本书内容 全书共分为15章,主要通过“基础篇(4章)+提高篇(6章)+案例篇(5章)”3大维度一体化的方式讲解,具体的学习结构如下所示。 本书特色 1.工具多、介绍全面 书中介绍了诸多款Python数据可视化工具,每一款工具的介绍都是从基础开始不断进阶,全面细致,不仅可以学习,还可以作为日常查阅的工具书。 2.实例丰富、学以致用 书中介绍的每一款数据可视化工具都结合了大量的实例以及非常详细的注释信息,力求使读者能够快速了解和使用该工具,提升学习效率,缩短学习路径。 3.提升技能、综合运用 通过案例应用,带领读者完成各种实用性较强并结合不同技术的Python数据可视化案例,让读者不断提升数据分析和数据可视化技能,从而快速了解和掌握每一款数据可视化工具的使用方法,提升综合运用的能力。 4.精彩栏目、贴心提示 本书根据实际学习的需要,设置了“注意”“说明”等许多贴心的小栏目,辅助读者轻松理解所学知识,规避编程陷阱。 5.丰富资源、边学边练 本书提供了丰富的学习资源,包含视频、源代码、实战练习等。读者可访问我社官网>服务>资源下载页面:***。 本书读者对象 (1)Python的编程爱好者。 (2)参加毕业设计的学生。 (3)相关培训机构的老师和学生。 (4)大中专院校的老师和学生。 (5)数据分析师。 (6)职场人员。 本书约定 读者服务 为方便解决读者在学习本书过程中遇到的疑难问题及获取更多图书配套资源,我们在明日学院网站为您提供了社区服务和配套学习服务支持。此外,我们还提供了质量反馈信箱及售后服务电话等,如图书有质量问题,可以及时联系我们,我们将竭诚为您服务。 质量反馈信箱:mingrisoft@*** 售后服务电话:4006751066 售后服务QQ群:576760840(若此群已满,请根据提示加入相应的群) 微信公众号:明日IT部落 致读者 本书由明日科技的Python开发团队策划并组织编写,主要编写人员有高春艳、王小科、赛思琪、王国辉、李磊、赛奎春、赵宁、张鑫、周佳星、葛忠月、宋万勇、田旭、王萍、李颖、杨丽、刘媛媛、何平、依莹莹、吕学丽、钟成浩、徐丹、王欢、张悦、岳彩龙、牛秀丽、宋禹蒙、于英鹏、段霄雷、宛佳秋、杜明哲、王孔磊等。在编写本书的过程中,我们本着科学、严谨的态度,力求精益求精,但疏漏之处在所难免,敬请广大读者批评指正。 感谢您阅读本书,希望本书能成为您编程路上的领航者。 编者
第1篇 基础篇 001 第1章 认识数据可视化 002 1.1 什么是数据可视化 002 1.2 数据可视化的作用 002 1.3 数据可视化常用工具 003 1.4 如何选择适合的图表类型 004 1.5 图表的基本组成 005 第2章 搭建Python数据可视化环境 007 2.1 Python概述 007 2.2 搭建Python开发环境 008 2.2.1 安装Python 008 2.2.2 使用IDLE编写“hello world” 012 2.3 集成开发环境PyCharm 014 2.3.1 下载PyCharm 014 2.3.2 安装PyCharm 015 2.3.3 运行PyCharm创建工程 018 2.3.4 第一个Python程序“Hello World!” 019 2.4 数据分析标准环境Anaconda 022 2.4.1 下载Anaconda 022 2.4.2 安装Anaconda 023 2.5 Jupyter Notebook开发工具 025 2.5.1 认识Jupyter Notebook 025 2.5.2 新建一个Jupyter Notebook文件 025 2.5.3 在Jupyter Notebook中编写“Hello World” 025 第3章 绘图基础之海龟绘图Turtle 029 3.1 认识海龟绘图 029 3.1.1 Turtle模块 029 3.1.2 海龟绘图的坐标系 030 3.1.3 海龟绘图的关键要素 030 3.1.4 绘制第一幅图 030 实例3.1 绘制一只向前爬行的小海龟 030 3.2 窗口控制 032 3.2.1 设置窗口的尺寸和初始位置 032 3.2.2 设置窗口标题 032 3.2.3 设置窗口的背景颜色 033 3.2.4 设置窗口的背景图片 034 3.2.5 清空屏幕上的绘图 035 3.2.6 关闭窗口 035 3.3 画笔设置 035 3.3.1 画笔初始形状 036 3.3.2 设置画笔颜色 037 3.3.3 落笔与抬笔 038 实例3.2 绘制两条不同颜色的平行线 039 3.3.4 设置线条粗细 040 3.3.5 隐藏与显示海龟光标 040 3.3.6 设置画笔的速度 041 3.4 输入/输出文字 042 3.4.1 输出文字 042 3.4.2 输入文字 043 3.5 绘制图形 045 3.5.1 绘制线条 045 实例3.3 绘制折线 045 3.5.2 绘制矩形 046 实例3.4 绘制一个简单的柱子 046 3.5.3 绘制柱形图 047 实例3.5 绘制销量分析柱形图 047 3.6 综合案例——绘制奥运五环标志 049 3.7 实战练习 050 第4章 Matplotlib入门 051 4.1 Matplotlib概述 051 4.1.1 Matplotlib简介 051 4.1.2 安装Matplotlib 054 4.1.3 Matplotlib图表之初体验 056 实例4.1 在PyCharm中绘制图表 056 实例4.2 Jupyter Notebook中绘制图表 056 4.2 图表的常用设置 057 4.2.1 基本绘图plot()函数 057 实例4.3 绘制简单折线图 057 实例4.4 绘制体温折线图 057 4.2.2 设置画布 060 实例4.5 自定义画布 060 4.2.3 设置坐标轴 060 实例4.6 为体温折线图的轴设置标题 061 实例4.7 为折线图设置刻度1 062 实例4.8 为折线图设置刻度2 062 实例4.9 为折线图设置坐标范围 063 4.2.4 添加文本标签 063 实例4.10 为折线图添加基础体温文本标签 065 4.2.5 设置标题和图例 065 4.2.6 添加注释 068 实例4.11 为图表添加注释 070 4.2.7 设置网格线 071 4.2.8 设置参考线(辅助线) 071 实例4.12 为图表添加水平参考线 072 4.2.9 选取范围 072 实例4.13 为图表添加选取范围 073 4.2.10 图表布局 073 4.2.11 保存图表 074 4.3 常用图表的绘制 074 4.3.1 绘制折线图 075 实例4.14 绘制学生语数外各科成绩分析图 075 4.3.2 绘制柱形图 076 实例4.15 5行代码绘制简单的柱形图 076 实例4.16 绘制线上图书销售额分析图 077 实例4.17 绘制各平台图书销售额分析图 077 4.3.3 绘制直方图 078 实例4.18 绘制简单直方图 079 实例4.19 直方图分析学生数学成绩分布情况 079 4.3.4 绘制饼形图 080 实例4.20 绘制简单饼形图 081 实例4.21 通过饼形图分析各省销量占比情况 082 实例4.22 绘制分裂饼形图 082 实例4.23 环形图分析各省销量占比情况 083 实例4.24 内嵌环形图分析各省销量占比情况 084 4.3.5 绘制散点图 085 实例4.25 绘制简单散点图 085 实例4.26 散点图分析销售收入与广告费的相关性 086 4.3.6 绘制面积图 086 实例4.27 绘制简单面积图 087 实例4.28 面积图分析线上图书销售情况 087 实例4.29 堆叠面积图分析各平台图书销售情况 088 4.3.7 绘制箱形图 088 实例4.30 绘制简单箱形图 089 实例4.31 绘制多组数据的箱形图 089 实例4.32 通过箱形图判断异常值 091 4.3.8 绘制热力图 091 实例4.33 绘制简单热力图 092 实例4.34 热力图对比分析学生各科成绩 092 4.3.9 雷达图 093 实例4.35 雷达图分析男生女生各科成绩差异 093 4.3.10 气泡图 094 实例4.36 气泡图分析成交商品件数与访客数 094 4.3.11 棉棒图 095 实例4.37 简单的棉棒图 096 4.3.12 误差棒图 096 实例4.38 绘制误差为1的误差棒图 097 4.4 综合案例——京东电商单品销量同比增长情况分析 097 4.5 实战练习 099 第2篇 提高篇 101 第5章 Matplotlib进阶 102 5.1 Matplotlib颜色设置 102 5.1.1 常用颜色 102 5.1.2 Matplotlib可识别的颜色格式 102 实例5.1 不同颜色格式的运用 103 5.1.3 Matplotlib颜色映射 104 实例5.2 颜色映射的运用 105 5.2 Matplotlib处理日期时间 105 5.2.1 dates模块 105 5.2.2 设置坐标轴日期的显示格式 107 实例5.3 设置日期显示格式 107 5.2.3 设置坐标轴日期刻度标签 108 实例5.4 设置x轴日期刻度为星期 108 5.3 次坐标轴(双坐标轴) 109 5.3.1 共享x坐标轴【twinx()函数】 109 实例5.5 绘制双y轴图表 109 5.3.2 共享y坐标轴【twiny()函数】 110 实例5.6 绘制双x轴图表 111 5.4 绘制多个子图表 111 5.4.1 subplot()函数 111 实例5.7 使用subplot函数绘制多子图的空图表 112 实例5.8 绘制包含多个子图的图表 112 5.4.2 subplots()函数 114 实例5.9 使用subplots()函数绘制多子图的空图表 114 实例5.10 使用subplots()函数绘制多子图图表 115 5.4.3 add_subplot()函数 116 实例5.11 使用add_subplot()函数绘制多子图图表 116 5.4.4 子图表共用一个坐标轴 116 实例5.12 多个子图共用一个y轴 116 5.5 绘制函数图像 117 5.5.1 一元一次函数图像 117 实例5.13 绘制一元一次函数图像 117 5.5.2 一元二次函数图像 118 实例5.14 绘制一元二次函数图像 118 5.5.3 正弦函数图像 118 实例5.15 绘制正弦函数图像 118 5.5.4 余弦函数图像 119 实例5.16 绘制余弦函数图像 119 5.5.5 S形生长曲线【Sigmoid()函数】 120 实例5.17 绘制高中生物S形曲线 120 5.6 形状与路径 121 5.6.1 形状(patches模块) 121 5.6.2 路径(path模块) 122 实例5.18 使用path模块绘制矩形路径 123 5.6.3 绘制圆(Circle模块) 124 实例5.19 绘制圆形 125 5.6.4 绘制矩形(Rectangle模块) 126 实例5.20 使用Rectangle模块绘制矩形 126 5.7 绘制3D图表 127 5.7.1 3D柱形图 127 实例5.21 绘制3D柱形图 127 5.7.2 3D曲面图 128 实例5.22 绘制3D曲面图 128 5.8 综合案例——图形的综合应用 128 5.9 实战练习 130 第6章 Pandas内置绘图 132 6.1 Pandas概述 132 6.1.1 Pandas简介 132 6.1.2 安装Pandas 132 6.2 Pandas家族成员 133 6.2.1 Series对象 135 实例6.1 创建一列数据 135 实例6.2 创建一列“物理”成绩 136 6.2.2 DataFrame对象 136 实例6.3 通过列表创建成绩表 137 实例6.4 通过字典创建成绩表 138 6.3 Pandas处理数据 138 6.3.1 读取数据 138 实例6.5 读取Excel文件 138 6.3.2 数据抽取 139 实例6.6 抽取指定的数据 139 6.4 Pandas数据可视化 140 6.4.1 DataFrame.plot()函数 140 6.4.2 绘制折线图 141 实例6.7 绘制简单折线图 141 实例6.8 绘制多折线图 142 6.4.3 绘制柱形图 143 实例6.9 绘制带日期的柱形图 143 实例6.10 多柱形图 144 实例6.11 堆叠(面积)柱形图 145 6.4.4 绘制饼形图 145 实例6.12 标准饼形图 145 6.4.5 绘制直方图 146 实例6.13 绘制得分直方图 146 6.4.6 绘制散点图 147 实例6.14 绘制学历与薪资散点图 147 6.4.7 绘制箱形图 148 实例6.15 绘制箱形图 149 实例6.16 按学历分析薪资异常数据 149 6.5 综合案例——折线图+柱形图分析销售收入 150 6.6 实战练习 152 第7章 Seaborn图表 153 7.1 Seaborn入门 153 7.1.1 Seaborn简介 153 7.1.2 安装Seaborn 154 7.1.3 Seaborn图表之初体验 154 实例7.1 绘制简单的柱形图 154 7.2 Seaborn图表的基本设置 155 7.2.1 背景风格 155 7.2.2 边框控制 156 7.3 常用图表的绘制 156 7.3.1 绘制折线图 156 实例7.2 绘制学生语文成绩折线图1 156 实例7.3 绘制学生语文成绩折线图2 157 实例7.4 多折线图分析学生各科成绩 157 7.3.2 绘制直方图 157 实例7.5 绘制简单直方图 158 7.3.3 绘制条形图 158 实例7.6 多条形图分析学生各科成绩 159 7.3.4 绘制散点图 160 实例7.7 散点图分析“小费” 160 7.3.5 绘制线性回归模型【lmplot()函数】 161 实例7.8 线性回归图表分析“小费” 161 7.3.6 绘制箱形图【boxplot()函数】 162 实例7.9 箱形图分析“小费”异常数据 162 7.3.7 绘制核密度图【kdeplot()函数】 162 实例7.10 核密度图分析鸢尾花 163 7.3.8 绘制提琴图【violinplot()函数】 163 实例7.11 提琴图分析“小费” 164 7.4 综合案例——堆叠柱形图可视化数据分析图表的实现 164 7.5 实战练习 165 第8章 第三方图表Pyecharts 166 8.1 Pyecharts概述 166 8.1.1 Pyecharts简介 166 8.1.2 安装Pyecharts 166 8.1.3 绘制第一张图表 167 实例8.1 绘制简单的柱状图 167 8.1.4 Pyecharts 1.0以上版本对方法的链式调用 168 8.2 Pyecharts图表的组成 169 8.2.1 主题风格 169 实例8.2 为图表更换主题 170 8.2.2 图表标题 171 实例8.3 为图表设置标题 172 8.2.3 图例 173 实例8.4 为图表设置图例 174 8.2.4 提示框 175 实例8.5 为图表设置提示框 176 8.2.5 视觉映射 177 实例8.6 为图表添加视觉映射 177 8.2.6 工具箱 179 实例8.7 为图表添加工具箱 179 8.2.7 区域缩放 180 实例8.8 为图表添加区域缩放 181 8.3 Pyecharts图表的绘制 182 8.3.1 柱状图——Bar模块 182 实例8.9 绘制多柱状图 182 8.3.2 折线/面积图——Line模块 183 实例8.10 绘制折线图 184 实例8.11 绘制面积图 185 8.3.3 饼形图——Pie模块 186 实例8.12 饼形图分析各地区销量占比情况 186 8.3.4 箱形图——Boxplot模块 187 实例8.13 绘制简单的箱形图 187 8.3.5 涟漪特效散点图——EffectScatter模块 187 实例8.14 绘制简单的散点图 187 8.3.6 词云图——WordCloud模块 188 实例8.15 绘制词云图分析用户评论内容 189 8.3.7 热力图——HeatMap模块 190 实例8.16 热力图统计双色球中奖数字出现的次数 190 8.3.8 水球图——Liquid模块 191 实例8.17 绘制水球图 191 8.3.9 日历图——Calendar模块 192 实例8.18 绘制加班日历图 192 8.4 综合案例——柱形图+折线图双y轴图表的绘制 193 8.5 实战练习 196 第9章 Plotly图表 198 9.1 Plotly入门 198 9.1.1 Plotly简介 198 9.1.2 安装Plotly 198 9.1.3 Plotly绘图原理 199 实例9.1 绘制第一张Plotly图表 199 实例9.2 使用expression模块绘制图表 200 9.1.4 Plotly保存图表的方式 201 实例9.3 生成HTML网页格式的图表文件 201 9.2 基础图表 202 9.2.1 折线图和散点图 202 实例9.4 绘制多折线图 202 实例9.5 绘制散点图 203 9.2.2 柱形图和水平条形图 204 实例9.6 绘制简单的柱形图 204 实例9.7 绘制多柱形图 204 实例9.8 堆叠柱形图 205 实例9.9 绘制水平条形图 206 9.2.3 饼形图和环形图 206 实例9.10 绘制饼形图 207 实例9.11 绘制环形图 207 9.3 图表细节设置 208 9.3.1 图层布局函数Layout() 208 9.3.2 添加图表标题(title) 209 9.3.3 添加文本标记(text) 210 实例9.12 为折线图添加文本标记 210 实例9.13 为散点图添加文本标记 211 实例9.14 为柱形图添加文本标记 211 9.3.4 添加注释文本(annotation) 211 实例9.15 标记股票最高收盘价 212 9.4 统计图表 213 9.4.1 直方图 213 实例9.16 绘制直方图 214 9.4.2 箱形图 215 实例9.17 绘制简单的箱形图 215 实例9.18 多个箱子的箱形图 216 9.4.3 热力图 216 实例9.19 实现RGB图形数据 216 实例9.20 绘制颜色图块 217 实例9.21 绘制简单热力图 218 9.4.4 等高线图 218 实例9.22 绘制等高线图 218 9.5 绘制多子图表 219 9.5.1 绘制基本的子图表 219 实例9.23 绘制一个简单的多子图表 219 9.5.2 自定义子图位置 220 实例9.24 绘制一个包含3个子图的图表 220 9.5.3 子图可供选择的图形类型 221 9.6 三维图绘制 221 实例9.25 绘制3D散点图 221 9.7 绘制表格 222 9.7.1 Table()函数 222 实例9.26 绘制学生成绩表 223 实例9.27 将Excel数据绘制成网页表格 223 9.7.2 create_table()函数 224 实例9.28 将DataFrame数据生成表格 224 实例9.29 数据表格与折线图混合图表 225 9.8 综合案例——用户画像 226 9.9 实战练习 228 第10章 Bokeh图表 229 10.1 Bokeh入门 229 10.1.1 安装Bokeh 229 10.1.2 Bokeh的基本概念 229 10.1.3 绘制第一张图表(折线图) 230 实例10.1 绘制简单的折线图 230 实例10.2 绘制多折线图 231 实例10.3 使用multi_line()方法绘制多折线图 232 10.1.4 数据类型 233 实例10.4 使用字典类型数据绘制图表 233 实例10.5 使用NumPy数组类型数据绘制图表 234 实例10.6 使用DataFrame类型数据绘制图表 234 实例10.7 通过ColumnDataSource传递字典数据绘制图表 234 实例10.8 通过ColumnDataSource传递DataFrame数据绘制图表 235 实例10.9 通过ColumnDataSource传递分组统计数据绘制图表 236 10.2 绘制基本图表 237 10.2.1 散点图 237 实例10.10 使用circle()方法绘制散点图 237 10.2.2 组合图表 237 实例10.11 折线图+散点图组合图表 237 10.2.3 条形图 238 实例10.12 绘制垂直条形图 238 实例10.13 绘制水平条形图 239 10.2.4 饼(环)形图 239 实例10.14 绘制饼形图 239 实例10.15 绘制环形图 240 10.3 图表设置 241 10.3.1 图表的布局 241 实例10.16 垂直方向布局多个图表 241 实例10.17 水平方向布局多个图表 241 实例10.18 通过网格布局多个图表 242 10.3.2 配置绘图工具 242 实例10.19 在图表上显示工具栏 243 实例10.20 为图表指定平移、滑轮缩放和悬停工具 244 10.3.3 设置视觉属性 244 实例10.21 为图表设置主题样式 245 实例10.22 使用调色板为图表设置颜色 246 实例10.23 使用颜色映射器为图表设置颜色 246 10.3.4 图表注释 247 实例10.24 为图表设置标题 247 实例10.25 设置图表标题颜色和大小等 248 实例10.26 为图表设置双标题 248 实例10.27 为图表添加图例 249 实例10.28 指定图例所显示的位置 249 实例10.29 图例自动分组 250 10.4 可视化交互 250 10.4.1 微调器 250 实例10.30 通过微调器调节散点图中散点的大小 251 10.4.2 选项卡 252 实例10.31 为图表添加选项卡 252 10.4.3 滑块(自定义js回调) 252 实例10.32 通过滑块调整图表 253 10.5 综合案例 254 10.6 实战练习 255 第3篇 案例篇 257 第11章 Matplotlib+Pandas实现商业图表之渐变饼形图 258 11.1 案例描述 258 11.2 实现过程 259 11.2.1 数据准备 259 11.2.2 数据处理 259 11.2.3 绘制渐变饼形图 260 11.3 关键技术 262 第12章 Matplotlib+NumPy实现商业图表之对比分析双向柱形图 264 12.1 案例描述 264 12.2 实现过程 265 12.2.1 数据准备 265 12.2.2 绘制双向柱形图 265 12.3 关键技术 267 第13章 Matplotlib+Animation实现动态图表 269 13.1 案例描述 269 13.2 实现过程 270 13.2.1 数据准备 270 13.2.2 绘制双y轴动态图表 270 13.2.3 程序调试 272 13.3 关键技术 274 第14章 Matplotlib+Pandas+PyQt5实现嵌入交互式图表 275 14.1 案例描述 275 14.2 界面设计环境安装与配置 277 14.3 实现过程 278 14.3.1 窗体设计 278 14.3.2 .ui文件转换为.py文件 279 14.3.3 主程序模块 280 14.4 关键技术 283 第15章 Matplotlib+NumPy实现趣味绘图——花好月圆 285 15.1 案例描述 285 15.2 实现过程 286 15.2.1 图案设计草图 286 15.2.2 算法公式 286 15.2.3 绘制“花好月圆” 287 15.3 关键技术 289 附录 291 附录1 Matplotlib速查表 291 附录2 颜色值速查表 296 附录3 Matplotlib颜色图 300 附录4 Plotly配色 303 附录5 Turtle常见命令速查表 307
ISBN:978-7-122-44871-2
语种:汉文
开本:16
出版时间:2024-11-01
装帧:平
页数:307