squares⇔平方
plot⇔绘制
fontsize⇔字体大小
label⇔标签
tick⇔记号
params⇔参数
scatter⇔散射,散点
可视化学习
——————————
学习的第一天
0.下载matplotlib
在Linux和OS X系统中,应执行的命令类似于下面这样:
pip install --user pygal
在Windows系统中,命令类似于下面这样(在cmd中输出):
python -m pip install --user pygal
也可以这样:
(--user)可以不加,如果系统提示错误,则需要加上:
pip install pygal --user
1.了解matplotlib库。
在我们绘制图表时,需要import matplotlib.pyplot。
因为模块pyplot包含很多用于生成图表的函数。
2. 学习绘制简单的折线图。
import matplotlib.pyplot as plt
squares = [1,4,9,16,25]
plt.plot(squares)
plt.show
这里定义一个名为(squares)的列表,将列表传给函数plot(),最后使用函数show()将图标绘制出来。
3. 修改图表的标签文字和线条粗细
import matplotlib.pyplot as plt
squares = [1,4,9,16,25]
plt.plot(squares,linewidth=5)
#设置图表标题,并给坐标轴加上标签
plt.title("Square Numbers",fontsize=24)
plt.xlabel("Value",fontsize=14)
plt.ylabel("Square of Value",fontsize=14)
#设置刻度标记的大小
plt.tick_params(axis="both",labelsize=14)
plt.show()
1.plot()中:
参数:squares, 将列表squares的数据传给了plot
参数:linewidth,决定了plot绘制的线条的粗细。
2.title()中:
参数:"Square Numbers"决定了图表的标题(不可以使用中文),
参数:fontsize=24指定了图表中文字的大小。
3.xlabel()ylabel()中:
参数:”Value","Square of Value"决定了x,y轴的标题,
参数:fontsize=14决定了字体大小。
4.tick_params()设置刻度的样式。
实参:axis="both"决定了x轴和y轴上的刻度,
参数:labelsize=14将刻度标记设置为字号14。
4.矫正图形
当我们发现图表,没有准确的绘制数据时。
我们可以通过一下操作修复问题:
原因可能是,我们给定一系列数字时,它给定的第一个数据对应点对应的x坐标为0,但我们是按照第一个x坐标为一开始计算(这是在自己为设置的情况下,系统的默认设置),为了改变这种默认设置,我们可以给plot()同时出入输入值,与输出值。
import matplotlib.pyplot as plt
input_values = [1, 2, 3, 4, 5]
squares = [1, 4, 9, 16, 25]
plt.plot(input_values, squares, linewidth=5)
#设置图表标题并给坐标轴加上标签
plt.title("Square Numbers",fontsize=24)
plt.xlabel("Value",fontsize=14)
plt.ylabel("Square of Value",fontsize=14)
#设置刻度标记的大小
plt.tick_params(axis="both",labelsize=14)
plt.show()
可以看到,此时x轴与y轴已经变成了我们提供给的数值。它无需对输出值的生成方式作出假设,最终的图形是正确的。(ps:使用plot()函数时可指定各种实参,还可使用众多函数对图形进行定制)
使用scatter()绘制散点图并设置其样式
有时候,需要绘制散点图并设置各个数据点的样式。
例如,你可能想以一种颜色显示较小的值,而用另一种颜色显示较大的值。绘制大型数据集时,你还可以对每个点都设置同 样的样式,再使用不同的样式选项重
新绘制某些点,以突出它们。
1.使用scatter()绘制单个点
如果想绘制单个点,可以使用scatter()函数,并向它传递一对x,y坐标,它将在指定位置绘制一个点
import matplotlib.pyplot as plt
plt.scatter(2,4,s=200)
#设置图表标题并给坐标轴加上标签
plt.title("Square Numbers",fontsize=24)
plt.xlabel("Value",fontsize=14)
plt.ylabel("Square of Value",fontsize=14)
#设置刻度标记的大小
plt.tick_params(axis="both",which="major",labelsize=14)
plt.show()
在这里,我们调用scatter()函数,
并使用了:
实参s=200设置了绘制图形时使用的点的尺寸。
实参2作为点的x坐标。
实参4作为点的y坐标。
2.使用scatter()绘制一系列点
如果想要绘制一系列的点,
可向scatter()传递两个分别包含x值与y值的列表:
import matplotlib.pyplot as plt
x_values = [1,2,3,4,5]
y_values = [1,4,9,16,25]
plt.scatter(x_values,y_values,s=100)
#设置图表标题并给坐标轴指定标签
plt.title("Square Numbers",fontsize=24)
plt.xlabel("Value",fontsize=14)
plt.ylabel("Square of Value",fontsize=14)
#设置刻度标记的大小
plt.tick_params(axis="both",labelsize=14)
plt.show()
其中:
列表x_values包含被计算其平方的数字。
列表y_values包含前述每个数字的平方。
将这些列表传递给scatter()时,matplotlib依次从每个列表中读取一个值来绘制一个点。
所以,所有绘制的点坐标分别为(1,1),(2,4),(3,9),(4,16),(5,25)