1、实训操作手册 2,实验设计 (1)导入库和数据 导入matplotlib库与pyplot模块,由于matplotlib库默认不显示中文, 使用rcparam参数解决matplot中中文乱码,然后读取服务器中内置的csv格式 的“淘宝兰花数据集"。 (2)设置轴数据 将“植物品种"作为X轴变量,将“付款人数"作为Y轴变量,先统计不 同品种的兰花的数量,将每一品种兰花根据“是否带花苞/花箭”分为两类,统 计每种“包含花苞/花箭”和“不包含花苞/花箭”兰花的付款人数。 (3)创建画布与子图(柱形图) 创建画图的画布,并在画布中添加柱形图,在同一横坐标刻度画不同品种 的兰花包含于与不包含
2、花苞/花箭时付款人数的统计柱子,将统一刻度的是否包 含花苞/花箭这两个柱子叠加,形成堆积柱形图。 (4)设置图形元素 对柱形图的标题、横纵坐标轴轴标题进行命名,显示数据标签,设置横坐 标刻度文字的显示效果。 (5)生成图片 设置生成图片的路径和名称,生成图片。 (6)可视化分析 通过下图可知,购买人数多的都是不带花苞/花箭的兰花产品,所值在产品 选品时,可尽量集中在不带花苞/花箭的兰花产品。 堆积柱状图(是否带花苞/花箭)40000 - 40000 - 40000 - 40000 - 20000 - 80000 - 60000 - 植物品种 5 828 是:2
3、77 是:230 是:0 是:320 是:0 互尘5否:305否:278否:483否:91否:28, (二)实训操作: 需在 操作方法与“任务一 ”的操作一致,在此不再赘述。注意:操作时,“任务二”中操作,不然会导致实训内容不正确。 任务三“类别比较图表”之条形图 点击任务三按钮,进入“类别比较图表"之条形图,如图1-8。 图1-8 “类别比较图表”之条形图 在任务三中,对市场的上架品牌进行分析,确定行业领头羊,为以后的经典 分析与学习奠定基础。 (一)实验讲解: 1. 理论部分 (1)简介 条形图与柱形图类似,几乎可以表达相同多的数据信息。在条形图中,类别
4、型或序数型变量映射到纵轴的位置,数值型变量映射到矩形的宽度。条形图的柱 形变为横向,从而导致与柱形图相比,条形图更加强调项目之间的大小对比。尤 其在项目名称较长以及数量较多时,采用条形图可视化数据会更加美观、清晰, 如下图所示。 (b)多数据系列条形图 (d)百分比堆积条形图 ok …j 0W20 Franc* . 8many・—occok,sw*dm-—0 ft W ISRenwns(a)单数据系列条形图 (c)堆积条形图 (2) Python绘制条形图 用matplotlib包绘制的条形图中,使用pit. barh ()函数替代柱形图绘制 函数pit. bar (),其他
5、语法与柱形图的绘制基本一致,只是X轴变成数值型坐 标,而Y轴变成类别型坐标。 参数 接收值 说明 默认值 y array y轴的数值 width array x轴的数值 alpha float 条形的颜色透明度; 1 height float 条形的宽度; 0.8 color (facecolor) string 条形填充的颜色; 随机色 edgecolor string 条形边缘颜色 None label string 图例名称,解释每个图像代 表的含义 None linewidth (linewidths / Iw
6、) 数值 边缘or线的宽度 1 2. 实验设计 (1)导入库和数据 导入mat plot lib库、pyplot模块,由于matplotlib库默认不显示中文, 使用rcparam参数解决matplot中中文乱码,然后读取服务器中内置的csv格式 的“淘宝兰花数据集”。 (2)设置轴数据 将“评论数"作为X轴变量,将“品牌”作为Y轴变量,统计每一品牌的 评论数,对数据进行排序,并选取前20的数据。 (3)创建画布与子图(条形图) 创建画图的画布,并在画布中添加条形图。 (4)设置图形元素 对条形图的标题、横纵坐标轴轴标题进行命名,设置横坐标刻度文字的显 示效果。 (5
7、生成图片 设置生成图片的路径和名称,生成图片。 (6)可视化分析 通过下图可知,购买人数较多且评论数量多的前20个品牌(店铺)如下图 显示,在后续的选品、店铺装修、店铺活动等可参照行业标杆。 条形图评论数 (二)实训操作: 操作方法与“任务一"的操作一致,在此不再赘述。注意:操作时,需在 “任务三”中操作,不然会导致实训内容不正确。 任务四“类别比较图表”之词云图 点击任务四按钮,进入“类别比较图表"之词云图,如图1-9O此的if I开发语言:Python •图1-9词云图分析 在任务四中,对兰花商品的功能进行分析,通过对“功能"描述进行词云分 析,了解市场中客户对兰花的
8、功能需求。 (一)实验讲解: 1. 理论部分 (1)简介 词云图是通过使每个字的大小与其出现频率成正比,显示不同单词在给定文 本中的出现频率,然后将所有的字词排在一起,形成云状图案,也可以任何格式 排列:水平线、垂直列或其他形状,也可与显示获分配元数据的单词,在词云图 上使用颜色通常都是毫无意义的,主要是为了美观,我们可以用颜色对单词进行 分类或显示另一个数据变量。词云图通常用于网站或博客上,用于描述关键词或 标签,也可用来比较两个不同的文本。 词云图虽然简单易懂,但是有一些重大缺点,①较长的字词会引人注意;② 字母含有很多升部/降部的单词可能会受到人关注;③分析精度不足,较多时候
9、是为了美观。 (2) Python绘制词云 词云图可以用过wordcloud包的Wordcloud()函数实现,不仅可以实现方形 的词云图,还能借助PIL包的image。函数导入二值化的图像,从而实现不同形 状的词云图。在做中文文本分析时,可以借助jieba包做分词处理,然后使用 Wordcloud()函数做文本的统计分析。 常用参数名称 接收值 说明 默认值 Font_path string 字体路径 width int 画布宽度 400像素 height int 画布高度 200像素 prefer_horizo ntal float 词语水平方
10、向排 版出现的频率 0.9 mask nd-array or None 如果参数为空, 则使用二维遮罩 绘制词云。如果 mask非空,设置 None 的宽高值将被忽 略,遮罩形状被 mask取代。除全 白(#FFFFFF)的 部分将不会绘 制,其余部分会 用于绘制词云 scale float 按照比例进行放 大画布 1 min_font_size int ( 显示的最小的字 体大小 4 font_step int 字体步长,如果 步长大于1,会加 快运算但是可能 导致结果出现较 大的误差 1 max_words number 要
11、显示的词的最 大个数 200 background_co lo color value 背景颜色 black max_font_size int or None 显示的最大的字 体大小 None 2. 实验设计 (1)导入库和数据 导入wordcloud库与jieba库,然后读取服务器中内置的csv格式的“淘宝 兰花数据集”。 (2)设置待分析数据 选择“功能”为分析字段,对语句进行切分 (3)词云图参数设置 添加词云绘图函数,设置词云的背景颜色与宽高 (4)词云图片设置 将词云图按精确模式输出 (5)生成图片 设置生成图片的路径和名称,生成图片。
12、 (6)可视化分析 从产品的词云可知,商家在宣传时,都喜欢使用“美观"、"提神"、“防 辐射”、“去甲醛"等字眼,说明大多数商家对客户分析时,都得出过客户较为 关注这些产品。 x长 趣忒净:甲奠 加湿¥ nII II II II 她驱蚊防辐身 (二)实训操作: 操作方法与“任务一 ”的操作一致,在此不再赘述。注意:操作时,需在 “任务四”中操作,不然会导致实训内容不正确。 任务五“时间序列图表”之折线图点击任务五按钮,进入“时间序列图表"之折线图,如图1-10。 图1-10折线图 在任务五中,对消费者的兰花品种偏好进行分析,通过折线图查找兰花种类 与购买人数
13、的关系,从而查看各类兰花的购买人数分布情况。 (一)实验讲解: 1. 理论部分 (1)简介 折线图(linechart)用于在连续间隔或时间跨度上显示定量数值,最常用 来显示趋势和关系(与其他折线组合起来)。此外,折线图也能给出某时间段内 的整体概览,看看数据在这段时间内的发展情况。要绘制折线图,先在笛卡儿坐 标系上定出数据点,然后用直线把这些点连接起来。 在折线图中,X轴包括类别型或者序数型变量,分别对应文本坐标轴和序数 坐标轴(如日期坐标轴)两种类型;Y轴为数值型变量。折线图主要应用于时间 序列数据的可视化。(a)为双数据系列折线图,X轴变量为时序数据。 在散点图系列中,曲线图
14、带直线而没有数据标记的散点图)与折线图的图 像显示效果类似。在曲线图中,X轴也表示时间变量,但是必须为数值格式,这 是两者之间最大的区别。所以,如果X轴变量为数值格式,则应该使用曲线图, 而不是折线图来显示数据。 在折线图系列中,标准的折线图和带数据标记的折线图可以很好地可视化数目录一、“案例五单项实训-数据可视化"1任务一 “类别比较图表"之柱形图1 (一)实验讲解:1 (二)实训操作:4任务二“类别比较图表”之堆积柱形图6 (一)实验讲解:7 (二)实训操作:9任务三“类别比较图表"之条形图9 (-)实验讲解:10 (二)实训操作:13任务四“类别比较图表"之词云图13
15、一)实验讲解:14 (二)实训操作:16任务五“时间序列图表"之折线图17 (一)实验讲解:17 (二)实训操作:20任务六 “数据关系图表"之散点图20 (一)实验讲解:21 (二)实训操作:24任务七 “数据分布图表"之直方图24 (一)实验讲解:25 (二)实训操作:28任务八 “数据分布图表"之箱线图28 (一)实验讲解:29 (二)实训操作:32任务九“局部整体图表”之饼图32 (一)实验讲解:33 (二)实训操作:36 据。因为图表的三维透视效果很容易让读者误解数据,所以不推荐使用三维折线 图。另外,堆积折线图和百分比堆积折线图等推荐使用相应的面积图,例如
16、堆 积折线图的数据可以使用堆积面积图绘制,展示的效果将会更加清晰和美观。 (b)面积图 (a)纯色填充 多数据系列图 (b)颜色映射填充 (2) Python绘制折线图 使用matplotlib包中的pit. plot函数和pit. fill_betwecn()函数可以绘 制折线图。 Plot。函数常用参数包括: 常用参数 接收值 说明 默认值 *args array x轴与y轴对应的数据; color string 表示折线的颜色; None marker string 表示折线上数据点处的类型; None linestyle st
17、ring 表示折线的类型; —— linewidth 数值 线条粗细:linewidth=l. =5. =0. 3 1 alpha 0~1之间的小数 表示点的透明度; None label string 数据图例内容:label='实际数 据, None 2. 实验设计 (1)导入库和数据 导入matplot lib库与pyplot模块,由于matplot lib库默认不显示中文, 使用rcparam参数解决matplot中中文乱码,然后读取服务器中内置的csv格式 的“淘宝兰花数据集"o (2)设置轴数据 选定用于分析的横纵坐标数据,将“植物品种”设
18、为X轴,“付款人数”设 为Y轴,对“植物品种”进行分组并统计每种类别的“付款人数"总和,对统计 数据进行排序。 (3)创建画布与子图(折线图) 创建画图的画布,并在画布中添加折线图。 (4)设置图形元素 对折线图的标题、横纵坐标轴轴标题进行命名,显示数据标签,设置横坐 标刻度文字的显示效果。 (5)生成图片 设置生成图片的路径和名称,生成图片。 (6)可视化分析 通过对植物品种进行分析,从折线图可知,除了兰花和其他这两没有指向性 的描述外,销售比较好的品种主要是蝴蝶兰,在选品时可重点考虑该品种。 折线图必龄多戒善多吵罗萨萨彳W禧萨嚓底航翌 植物品种 (二)实训操作: 操
19、作方法与“任务一"的操作一致,在此不再赘述。注意:操作时,需在 “任务五”中操作,不然会导致实训内容不正确。 任务六 “数据关系图表”之散点图 点击任务六按钮,进入“数据关系图表"之散点图,如图1-11。 图1-11散点图分析 在任务五中,对消费者的价格区间偏好进行分析,通过散点图分析价格与付 款人数的关系。 (一)实验讲解: 1. 理论部分 (1) 简介 散点图 (scatter graph, point graph, X~Y plot, scatter chart 或者 scattergram)是比较常见的图表类型之一,通常用于显示和比较数值。散点图 使用一系列的散点在
20、直角坐标系中展示变量的数值分布。在二维散点图中,可以 通过观察两个变量的数据分析,发现两者的关系与相关性,如图5-1-1所示。 散点图可以提供3类关键信息:①变量之间是否存在数量关联趋势;②如果存 在关联趋势,那么是线性还是非线性的;③观察是否存在离群值,从而分析这 些离群值对建模分析的影响。 回归线变量4 通过观察散点图上数据点的分布情况,我们可以推断出变量间的相关性。如果变量之间不存在相互关系,那么在散点图上就会表现为随机分布的离散的点, 如果存在某种相关性,那么大部分的数据点就会相对密集并以某种趋势呈现。数 据的相关关系主要分为:正相关(两个变量值同时增长)、负相关(一个变量值 增加
21、另一个变量值下降)、不相关、线性相关、指数相关等,表现在散点图上 的大致分布如图5-1-2所示。那些离点集群较远的点我们称为离群点或者异常点 (outliers)。 作为自变量的因素与作为因变量的预测对象是否有关,相关程度如何,以及 判断这种相关程度的把握性多大,就成为进行回归分析必须要解决的问题。进行相关分析,一般要求出相关关系,以相关系数的大小来判断自变量和因变量的相关程度:强相关、弱相关和无相关等。 关程度:强相关、弱相关和无相关等。 强相关弱相关无相关 Cov(X,K) 皿灯•伽丫) 上式中,Cov (X, Y)为X, Y的协方差,D (X)、D (Y
22、)分别为X、Y的方 差。散点图经常与回归线(line of best fit,就是最准确地贯穿所有点的线) 结合使用,归纳分析现有数据实现曲线拟合,以进行预测分析。对于那些变量之 间存在密切关系,但是这些关系又不像数学公式和物理公式那样能够精确表达 的,散点图是一种很好的图形工具。但是在分析过程中需要注意,这两个变量之 间的相关性并不等同于确定的因果关系,也可能需要考虑其他的影响因素。 (2) Python绘制散点图 在python中,可以使用mat li bp lot库中的scttert ()绘制散点图,还可以使用seaborn库的sctterplot ()绘制,在该任务中,使用matp
23、lotlib模块中的 scatter函数,先来看一下scatter函数的基本信息。 scatter ()的常用参数: 常用参数名称 接收值 说明 默认值 X array 表示X轴数据 y array 表示y轴数据 marker MarkerStyle 标记样式 reParams["scatte r. markern](默认 值:5) c 特定string或者包 含颜色字符串的 array 标记颜色 None linewidths 数值 边缘or线的宽度 1 alpha float 柱形图的颜色透 明度 1 2, 实验设计
24、 (1) 导入库和数据 导入matplotl ib库与pyplot模块,由于matplotl ib库默认不显示中文, 使用rcparam参数解决matplot中中文乱码,然后读取服务器中内置的csv格式 的“淘宝兰花数据集"O (2) 设置轴数据 选定用于分析的横纵坐标数据,将“付款人数”设为X轴、“价格”设为Y 轴。 (3) 创建画布与子图(散点图) 创建画图的画布,并在画布中添加散点图 (4) 设置图形元素 对散点图的标题、横纵坐标轴轴标题进行命名。 (5)生成图片 设置生成图片的路径和名称,生成图片。 (6)可视化分析 从价格与付款人数的散点关系图来看,大部分的付款
25、产品价格都集中在0-25元这一区间,也就是说店铺的产品定价最好也在该区间,考虑利润问题, 在选品时应考虑成本要低于该区间。 (二)实训操作: 操作方法与“任务一 ”的操作一致,在此不再赘述。注意:操作时,需在 “任务六”中操作,不然会导致实训内容不正确。 任务七 “数据分布图表”之直方图 点击任务七按钮,进入“数据分布图表"之直方图,如图1-120图1-12直方图分析 在任务七中,对兰花的定价进行分析,通过直方图统查看价格的分布。 (一)实验讲解: 1. 理论部分 (1)简介 统计直方图(histogram)形状类似柱形图,却有着与柱形图完全不同的含 义。统计直方图涉
26、及统计学的概念,首先要从数据中找出它的最大值和最小值, 然后确定一个区间,使其包含全部测量数据,将区间分成若干个小区间,统计测 量结果出现在各个小区间的频数M,以测量数据为横坐标,以频数M为纵坐标, 划出各个小区间及其对应的频数。在平面直角坐标系中,横轴上标出每个组的端 点,纵轴表示频数,每个矩形的高代表对应的频数,我们称这样的统计直方图为 频数分布直方图。 所以统计直方图的主要作用有:①能够显示各组频数或数量分布的情况;易于显示各组之间频数或数量的差别,通过直方图还可以观察和估计哪些数 据比较集中,异常或者孤立的数据分布在何处。 统计直方图的基本参数:①组数,在统计数据时,我们把数据按照
27、不同的 范围分成几个组,分成的组的个数称为组数;②组距,每一组两个端点的差;频数,分组内的数据元的数量除以组距。 cnoo Ayscep MXSPD (al)单数据系列统计直方图 203040 MXSPD (bl)单数据系列核密度估计图 (a2)多数据系列统计直方图 • 00 4 -Un8 •O 0.15- 0.10- 0.05- 0.00- (b2)多数据系列核密度估计图 (2) Python绘制直方图 matplotlib包提供了 hist ()函数可以绘制直方图。 hist ()函数常用参数包括: 参数名称 接收值 说明 默认值 X
28、 array 表示x轴数据。 bins array 表示分组数量 None range 0-1之间的float 指定直方图宽度 0.8 density 特定string或者 包含颜色字符串 的 array 表示直方图颜色 None weights ('center', 'edge'} 对齐方式, 'center*:使基准在x位置 居中。 'edge':将条形图的左边缘 与X位置对齐。 要对齐右边缘的条,请传递 center 负宽度和 align=' edge' histtpe (' bar 'barstackedr, 'ste
29、p',
'stepfilled'}
要绘制的直方图的类型
'bar'是传统的条形直方图。如 果给出多个数据,则条形图并排 排列。
30、决rnatplot中中文乱码,然后读取服务器中内置的csv格式 的“淘宝兰花数据集”。
(2)设置轴数据
选定用于分析“价格”数据。
(3)创建画布与子图(直方图)
创建画图的画布,并在画布中添加直方图,设置直方图的分组个数为20。
(4)设置图形元素
对直方图的标题、横纵坐标轴轴标题进行命名,显示数据标签。
(5)生成图片
设置生成图片的路径和名称,生成图片。
(6)可视化分析
通过对兰花价格进行直方图处理,可知产品定价主要分布在0T0元,结合 前面的价格和付款人数的相关分析,可知,店家在进货时,可考虑除去利润后成 本应控制在哪个范围。
一、“案例五单项实训-数据可视化 31、"
任务一 “类别比较图表”之柱形图
在【案例选择】下拉列表中,选择“案例五单项实训-数据可视化”,点击任务一按钮,进入“类别比较图表"之柱形图任务,如图
任务一按钮,进入“类别比较图表"之柱形图任务,如图
任务一按钮,进入“类别比较图表"之柱形图任务,如图
任务一按钮,进入“类别比较图表"之柱形图任务,如图
■事
(D S Q ® :•* O
M JfMimi/h.的大数就垛口分的由楸仿门系埃。
*UK°(球图1-1柱状图分析
在任务一中,分析哪些类别的兰花比较畅销,通过对不同类别的兰花的销量 统计,查找出产销的品类。
(一)实验讲解:
1. 理论部分
(1 32、简介
柱形图用于显示一段时间内的数据变化或显示各项之间的比较情况。在柱形 图中,类别型或序数型变量映射到横轴的位置,数值型变量映射到矩形的高度。 控制柱形图的两个重要参数是:“系列重叠''和“分类间距"。“分类间距"控 制同一数据系列的柱形宽度,数值范围为[0.0, 1.0]; “系列重叠"控制不同数 据系列之间的距离,数值范围为[-1.0, 1.0] o柱形图包括单数据系列柱形图、 多数据系列柱形图、堆积柱形图和百分比堆积柱形图共4种常见类型。但是,绘 制柱形图和条形图系列的最大潜在问题就是排序。
直方图(二)实训操作:
操作方法与“任务一 ”的操作一致,在此不再赘述。注意:操作时, 33、需在 “任务七”中操作,不然会导致实训内容不正确。
任务八“数据分布图表”之箱线图
点击任务八按钮,进入“ “数据分布图表"之箱线图,如图1T3。
益
S)开发语言:Python ■|«图1-13箱线图分析
在任务八中,对商城中的兰花定价进行分析,通过箱线图分析价格的分布规 律,从而指导店铺兰花的定价。
(一)实验讲解:
1.理论部分
(1) 简介
箱形图(Box-plot)又称为盒须图、盒式图或箱线图,是一种用作显示一组数 据分散情况资料的统计图。因形状如箱子而得名。在各种领域也经常被使用,常 见于品质管理。它主要用于反映原始数据分布的特征,还可以进行多组数据分布 特征的比 34、较。箱线图的绘制方法是:先找出一组数据的最大值、最小值、中位数 和两个四分位数;然后,连接两个四分位数画出箱子;再将最大值和最小值与箱子 相连接,中位数在箱子中间。通过数据的四分位数来展示数据的分布情况。例如: 数据的中心位置,数据间的离散程度,是否有异常值等。
Scale100 -n90 -
80 -
70-
60-
50-
40 一
30-
20 -
10-
0 _
90 -
80 -
70-
60-
50-
40 一
30-
20 -
10-
0 _
90 -
80 -
70-
60-
50-
40 一
30-
20 -
10 35、
0 _
90 -
80 -
70-
60-
50-
40 一
30-
20 -
10-
0 _
90 -
80 -
70-
60-
50-
40 一
30-
20 -
10-
0 _
90 -
80 -
70-
60-
50-
40 一
30-
20 -
10-
0 _
pper Extreme
pper Quartile
Median
Lower Quartile
Whisker
Lower Extreme Outlier/single data point
四分位间距(Interquartilerang 36、e(1QR))=上分位数(upper quartile)-下分 位数(lower quartile)
箱线图分为两部分,分别是箱(box)和须(whisker) o箱(box)用来表示从第 一分位到第三分位的数据,须(whisker)用来表示数据的范围。
箱线图从上到下各横线分别表示:数据上限(通常是Q3+1.5TQR),第三分位 数(Q3),第二分位数(中位数),第一分位数(Q1),数据下限(通常是Q l-1.5IQR)o
有时还有一些圆点,位于数据上下限之外,表示异常值(outliers) o
(注:如果数据上下限特别大,那么whisker将显示数据的最大值和最小值。)
(2)P 37、ython绘制箱形图
在Python中,可以使用seaborn库中的boxplot函数与matplotlib库中的 boxplot函数都可以绘制箱线图,在这里主要使用matplotlib库中的boxplot 函数绘制。
Boxplot函数常用参数:
参数
接收值
说明
默认值
X
array
指定要绘制箱线图的数据;
notch
bool
是否是凹口的形式展现箱线图
False
sym
str
指定异常点的形状
None
vert
bool
True,绘制垂直框。False,绘制水平 框。
True
whis
float 或
(float, 38、float)
指定上下须与上下四分位的距离
1.5
positions
int
指定箱线图的位置
None
widths
float
指定箱线图的宽度
0. 5
patch_artis
t
bool
是否填充箱体的颜色;
False
showmeans
bool
是否显示均值
False
showcaps
bool
是否显示箱线图顶端和末端的两条线
True
showbox
bool
是否显示箱线图的箱体
True
showfliers
bool
是否显示超出上限的异常值。
True
2. 实验设计
(1)导入库和数据
导 39、入matplotlib库与pyplot模块,由于matplotlib库默认不显示中文, 使用rcparam参数解决matplot中中文乱码,然后读取服务器中内置的csv格式 的“淘宝兰花数据集"。
(2)设置轴数据
选定用于分析的“价格"数据,并对价格进行排序,统计价格字段的四分之 一位数、四分之三位数、中位数以及上下限数值。
(3)创建画布与子图(箱线图)
创建画图的画布,并在画布中添加箱线图。
(4)设置图形元素
对箱线图的标题、横纵坐标轴轴标题进行命名,输出箱线图中的四分之一 位数、四分之三位数、中位数以及上下限数值。
(5)生成图片
设置生成图片的路径和名称,生成图片。 40、
(6)可视化分析
通过对价格的箱线图分析,可知产品价格在0-50之间,其他范围内的价格 都被视为了异常值。
箱线图
200 -
175-
150 -
125 -
100 -
75 -
50-
25 -
0-
ooo o ©O 0 00^1 I
开发语言:Python ■
N出取事
数据上限:200.0第三分位数(Q3) :23.0 第二分位数(中位数):10.0 第一分位数(Q1) :7.0
数据下限:1.01
价格(二)实训操作:
操作方法与“任务一 ”的操作一致,在此不再赘述。注意:操作时,需在 “任务八”中操作,不然会导致实训内容不正确。
任务九 41、局部整体图表”之饼图
点击任务九按钮,进入“局部整体图表"之饼图,如图l-14o
图1-14饼图分析
在任务九中,分析消费者对兰花的属性偏好,通过饼图查看消费者对产品是 否包含花苞/花箭的消费人数。
(一)实验讲解:
1. 理论部分
(1)简介
饼图(pie chart)被广泛地应用在各个领域,用于表示不同分类的占比情 况,通过弧度大小来对比各种分类。饼图是将一个圆饼按照分类的占比划分成多 个区块,整个圆饼代表数据的总量,每个区块(圆弧)表示该分类占总体的比例 大小,所有区块(圆弧)的加和等于100%。
饼图可以很好地帮助用户快速了解数据的占比分配,它的主要缺点如下。
(1 42、饼图不适用于多分类的数据,原则上一张饼图不可多于9个分类。因 为随着分类的增多,每个切片就会变小,最后导致大小区分不明显,每个切片看 上去都差不多大小,这样对于数据的对比是没有什么意义的。
(2)相比具备同样功能的其他图表(比如百分比堆积柱形图、圆环图), 饼图需要占据更大的画布空间。所以饼图不适合用于数据量大的场景。
(3)当很难对多个饼图之间的数值进行比较时,可以使用百分比堆积柱形 图或者百分比堆积条形图替代。
(4)不适合多变量的连续数据的占比可视化,此时应该使用百分比堆积面 积图展示数据,比如多变量的时序数据。
排序问题
在绘制饼图前一定注意把多个类别按一定的规则排序,但不 43、是简单地升序或 者降序。人们在阅读材料时一般都是从上往下,按顺时针方向的。所以千万不要 把饼图的类别数据从小到大,按顺时针方向展示。因为如果按顺时针或者逆时针 的顺序由小到大排列饼图的数据类别,那么最不重要的部分就会占据图表最显著 的位置。
MGM
(24 18%)
(b)
(C)
MGM
SJM (5231%)
(d)
(2) Python绘制饼图
使用matplotlib包中的pie ()
函数可以绘制饼图,但是在绘制前要先对
数据进行降序处理,再使用pie ()函数绘制饼图。
pie ()函数常用参数包括:
参数
接收值
说明
默认值
X
arra 44、y
指定绘图的数据;
explode
array
数组指定偏移每个楔形的半径的数,即饼 图某些部分的突出显示,呈现爆炸式;
None
labels
list
为饼图添加标签说明,类似于图例说明;
None
colors
array
指定饼图的填充色;
None
autopct
None or str or callable
自动添加百分比显示,可以采用格式化的 方法显示;
None
petdistance
float
设置百分比标签与圆心的距离;
0.6
shadow
bool
是否添加饼图的阴影效果;
False
labeldistan 45、
ce
float or
None
设置各扇形标签(图例)与圆心的距离;
1. 1
startangle
float,
设置饼图的初始摆放角度;
0
radius
float,
设置饼图的半径大小;
1
countercloc k
bool
是否让饼图按逆时针顺序呈现;
True
wedgeprops
diet
设置饼图内外边界的属性,如边界线的粗 细、颜色等;
None
textprops
diet
设置饼图中文本的属性,如字体大小、颜 色等;
None
center
(float, float)
指定饼图的中心点位置,默认为原点
46、
(0, 0)
frame
bool
是否要显示饼图背后的图框,如果设置为 True的话,需要同时控制图框x轴、y轴 的范围和饼图的中心位置;
False
2, 实验设计
(1) 导入库和数据
导入matplotlib库与pyplot模块,由于matplotlib库默认不显示中文, 使用rcparam参数解决matplot中中文乱码,然后读取服务器中内置的csv格式 的“淘宝兰花数据集"。
(2) 设置数据
选定用于分析的“付款人数”数据,将数据按照“是否包含花苞/花箭”进 行分组,统计每一类别的付款人数总和。
(3) 创建画布与子图(饼图)
创建画图的画布,并在画布中添 47、加饼图。
(4) 设置图形元素
对饼图的标题进行命名,显示图例名,设置横坐标刻度文字的显示效果。
(5) 生成图片
设置生成图片的路径和名称,生成图片。
(6) 可视化分析
通过对拼图的分析可知,大部分的用户都选择购买了不带花苞/花箭的兰花 产品,这与前面的分析结果一致,佐证了用户对与不带花苞/花箭这一类型兰花 产品的偏爱。
饼图否.否是
(二)实训操作:
操作方法与“任务一 ”的操作一致,在此不再赘述。注意:操作时,需在
“任务九”中操作,不然会导致实训内容不正确。
(2) Python绘制柱形图
(d)百分比堆积柱形图
使用matplotlib提供的bar 48、)函数绘制柱状图。
Bar函数的常用参数:
参数
接收值
说明
默认值
X
array
x轴数据;
height
array
柱形图的高度,也就是y轴的数 值;
alpha
float
柱形图的颜色透明度;
1
width
float
柱形图的宽度;
0.8
color
(facecolor)
string
柱形图填充的颜色;
随机色
edgecolor
string
图形边缘颜色
None
label
string
图例名称,解释每个图像代表的
含义
无
linewidth
(linewidths /
Iw)
49、
数值
边缘or线的宽度
1
2. 实验设计
(1)导入库和数据
导入matplotlib库与pyplot模块,由于matplotlib库默认不显示中文, 使用rcparam参数解决matplot中中文乱码,然后读取服务器中内置的csv格式 的“淘宝兰花数据集"。
(2)设置轴数据
选定用于分析的横纵坐标数据,将“植物类别"设为X轴,“付款人数”设 为Y轴,对“植物类别"进行分组并统计每种类别的“付款人数”总和。
(3)创建画布与子图(柱形图)
创建画图的画布,并在画布中添加柱形图
(4)设置图形元素
对柱形图的标题、横纵坐标轴轴标题进行命名,显示数据标签,设置横坐 50、标刻度文字的显示效果。
(5)生成图片
设置生成图片的路径和名称,生成图片。
(6)可视化分析
通过下图可知,购买人数多的为草本花卉类型的产品,但是根据花卉的分类, 兰花原就属于草本花卉,属于草本花卉分类下的宿根花卉。但是其他品种也是销 量的,因此,通过分析应该进行数据反查,可通过在电商商城查看其他类别的的 兰花是什么,为何包含在其他分类中。
柱形图
120000 -
100000 -
80000 -
60000 -
40000 -
20000 -
(二)实训操作:
1.添加项目
① 点击【新建】按钮,新增项目,系统加载一个“未命名"项目。②单击选 中项目,鼠标右键
©2010-2025 宁波自信网络信息技术有限公司 版权所有
客服电话:4009-655-100 投诉/维权电话:18658249818