答案: Answers-to-Python-Crash-Course【请前往对应章节】
数据可视化指的是通过可视化表示来探索数据,它与数据挖掘紧密相关,而数据挖掘是使用代码来探索数据集的规律和关联。
本章将学习如何生成数据以及如何对其进行可视化,将介绍两个库:一是matplotlib创建简单的图表,以及如何使用散点图来探索随机漫步过程;二是Pygal创建直方图,以及使用直方图来探索同时掷两个面数不同的骰子的结果。
Step1:导入pyplot模块(此模块中包含很多用于生成图表的函数),并指定别名,以免反复输入pyplot
import matplotlib.pyplot as plt
Step2:创建列表,在其中存储平方数
squares=[1,4,9,16,25]
Step3:将列表传递给函数plot(),这个函数尝试尝试根据列表提供的数字绘制出有意义的图形
plt.plot(squares)
Step4:打开matplotlib查看并显示绘制的图形
plt.show()
学会了如何绘制图形,我们还需要做一系列的后续操作。
操作 | 代码 |
---|---|
改线条粗细 | plt.plot(<列表名>, linewidth=<粗细值>) |
置图表标题 | plt.title(<标题名>, fontsize=<字号>) |
修改标签文字 | plt.xlable/ylable(<标签名>, fontsize=<字号>) |
修改线条粗细 | plt.tick_params(axis=‘both’, lablesize=<字号>) |
input_values=[1,2,3,4,5]
squares=[1,4,9,16,25]
Step3:将列表传递给函数plot(),这个函数尝试尝试根据列表提供的数字绘制出有意义的图形plt.plot(input_values,squares,linewidth=5)
plt.scatter(2,4)
② 绘制一系列点plt.scatter(x_values,y_values,4)
y_values=[x**2 for x in x_values]
遍历 x x x值,计算其平方值,并将结果存储到列表y_values中。一般这时需要设置坐标轴的取值范围,使用函数:axis([<x轴最小值>,<x轴最大值>,<y轴最小值>],<y轴最大值>)
edgecolor='none'
c=<颜色名称>或c=如c='red'或c=(0,0,0.8)
c=y_values, cmpa=plt.cm.Blues
c
设置成了一个y值列表,并使用参数cmap
告诉pyplot使用哪个颜色映射。这里代码将 y y y值小的点显示为浅蓝色,并将 y y y值较大的点显示为深蓝色。plt.savefig('squares_plot.png',bbox_inches='tight')
其中,第一个参数指定要以什么样的文件名保存图表;第二个实参指定将图表多余的空白区域裁减掉。随机漫步是每次行走都完全随机,没有明确的方向,结果是由一系列随机决策决定的。随机漫步就是蚂蚁在晕头转向的情况下,每次都沿随机的方向前行所经过的路径。在自然界、物理学、生物学、化学和经济领域,随机漫步都有实际用途。例如,水滴中的分子运动是随机的,因此花粉在水面上的运动路径犹如随机漫步。
在本节,我们将使用Python可视化包Pygal来生成可缩放的矢量图形文件。在数学领域中,常常利用投骰子来解释各种数据分析。
CSV文件:是将数据作为一系列以逗号分隔的值(CSV)写入文件。
CSV文件对人来说阅读起来比较麻烦,但程序可轻松地提取并处理其中的值,这有助于加快数据分析过程。
# 导入模块csv(csv模块包含在Python标准库中,可用于分析CSV文件中的数据行,让我们快速提取感兴趣的值
import csv
filename = 'sitka_weather_07-2014.csv'
# 打开文件,将结果文件对象存储在f中
with open(filename) as f:
reader = csv.reader(f) # 创建一个与该文件向关联的阅读器(reader)对象。reader处理文件中以逗号分割的第一行数据,并将每项数据都作为一个元素存储在列表中
header_row = next(reader) # 内置函数next()返回文件的下一行
print(header_row)
注:文件头的格式并非总是一致的,空格和单位可能出现在奇怪的地方。这在数据文件中很常见,但不会带来问题,