数据 可视化基础实验
基于 Python的 数据可视化 编程
【实验名称】 实验三: 基于 Python的 数据可视化 编程
【实验目的】
熟悉 基于 Python 的 基本图形 绘制 方法。
【实验原理】
Python 为我们提供了许多可视化工具, 如 Pandas、 Seaborn、 ggplot、 Bokeh、
pygal、 Plotly 等 。 这 里我们将使用 pandas 处理数据并将数据可视化。
在 Python进行数据挖掘和分析时,发现了一个名为 Anaconda 的 Python科学计算
环境。只需像普通软件一样安装好 Anaconda,就可以把 Python 的环境变量、解释
器、开发环境等安装在计算机中。除此之外, Anaconda 还提供了众多科学计算的
包,如 Numpy、 scpy、 Pandas 和 Matplotlib 等,以及机器学习、生物医学和天体物理
学计算等众多的包 /模块, 还自带 Jupyter 编译 器 。
本 次实验 将 借 助 Anaconda 学习 使用 基于 python 的 pandas 制 作 图表。
【实验环境】
Anaconda2-5.2
【实验步骤】
1、 安装 Anaconda。
双击打开 Anaconda安装文件,就像安装普通软件样,直接单击 Install安装即
可。注意,在图 2-2所示的对话框中记得勾选两个复选框。按照提示操作后,就可以
安装好我们需要的 Python、 pip和 Jupiter了。
2、 新创建 一个 python2 文件, 如下 图 所 示 ,在这里输入程序代码 。
3、 导入 Excel 数据 ( python_xs2018.xls) , 代码如下:
import matplotlib.pyplot as plt //导入 matplotlib.pyplot 别 名为 plt
import pandas as pd //导入 pandas, 别名为 pd
df = pd.read_excel(''C:\Users\Administrator\Desktop\python_xs2018.xls'')
//读入 数据
print df //显示查 看一下转 数据 表
点 击 “ 运行 ” 按钮 。后结果如下:
4、 做 箱式 图 ,输入 代码后点击 “ 运行 ”按钮 ,查看结果。 代码 解释如下:
fig = plt.figure() //创建 一个绘图对象
ax = fig.add_subplot(1,1,1) //将 画布分成 1行 1列 ,并在第一块中画 图
ax.boxplot(df[''Sale'']) //按 “Sale” 字段画 箱式图
plt.show() //显示 图像
5、 做 小提 琴 图 ,输入 代码后点击 “ 运行 ”按钮 ,查看结果。 代码 解释如下:
import seaborn as sns //导入 seaborn, 别名为 sns
sns.violinplot(df[''Age''],df[''Sex'']) //分 以 “Age” 、 “Sex” 字段 字段
为横 、 纵 坐标 , 画 小提 琴图
sns.despine() //去除 上侧和右侧轴线
plt.show() //显示 图像
下 图是不 去 上侧和右侧轴线 的 图像
6、 做 散点 图 ,输入 代码后点击 “ 运行 ”按钮 ,查看结果。 代码 解释如下:
fig = plt.figure() //创建 一个绘图对象
ax = fig.add_subplot(1,1,1) //设置 画布
x=df[''ID''] //取 ID字段中的值
y=df[''Income''] //取 Income字段中的值
z=df[''Sale''] //取 Income字段中的值
ax.scatter(x,y,c=''r'',marker=''s'',s=60) //分以 “ ID” 、 “Income” 字段 为
横 、纵 坐标 , 画 红色 方 形 60大 小的 散点 图
ax.scatter(x,z,c=''g'',marker=''o'',s=60) //分以 “ID” 、 “Sale” 字段 为
横 、纵 坐标 , 画 绿色圆 形 60大 小的 散点 图
plt.show() //显示图像
7、 做饼 图 ,输入 代码后点击 “ 运行 ”按钮 ,查看结果。 代码 解释如下:
var = df.groupby([''Sex'']).sum().stack() //把数据 按“ sex” 值 分组 , 对其
他字段值 汇总 , 行 变成列
t=var.unstack() //再 将 var中的 列变成行
type(t) //返回 t的数据类型
x = t [''Sale''] //取“ Sale”字段的值给 x
label1 = t.index //t中 索引值给 label1
plt.axis(''equal'') //使 x轴和 y轴的单位长度相同
plt.pie(x,labels=label1,autopct=''%1.1f%%'')按比例画出饼图,并在外侧标
注索引值,并用 format格式输入百分比
plt.show() //显示图像
8、 做气泡 图 ,输入 代码后点击 “ 运行 ”按钮 ,查看结果。 代码 解释如下:
fig = plt.figure() //创建 一个绘图对象
bu = fig.add_subplot(1,1,1) //设置 画布
bu.scatter(df[''Age''],df[''Sales''],s=df[''Income'']) //分以 “Age” 、
“Sale” 字段 为横 、纵 坐标 ,“ Income”值为 气泡 大 小 画气泡 图
plt.show()
|
|