Python绘图需要下载安装matplotlib模块,它是一个数学绘图库,我们将使用它来制作简单的图表,如折线图和散点图。关于matplotlib模块的下载安装预配置将在后面具体介绍。
(一)绘制折线图
首先,我们先绘制一个简单的折线图
# 调用模块 import matplotlib.pyplot as plt squares=[1, 4, 9, 16, 25] x=[1, 2, 3, 4, 5] plt.plot(x, squares) plt.show()
解释:
(1)plt.plot(x, squares)作用是画图,其中x相当于横坐标轴,squaers相当于纵坐标轴;
(2)plt.show()作用是将画好的图显示出来。
接下来,对上图进行进一步的修饰。
import matplotlib.pyplot as plt squares=[1, 4, 9, 16, 25] x=[1, 2, 3, 4, 5] # 设置线宽 plt.plot(x, squares, linewidth=4) # 设置图表标题,并给坐标轴添加标签 plt.title("square of 'x'", fontsize=20) plt.xlabel("x", fontsize=12) plt.ylabel("x^2", fontsize=12) # 设置坐标轴刻度标记的大小 plt.tick_params(axis='both', labelsize=10) plt.show()
解释:
(1)plt.plot(x, squares, linewidth=4)作用画图,参数linewidth=4表示将线条的宽度设置为4;
(2)plt.title("square of 'x'", fontsize=20)作用为图添加标题square of 'x',参数fontsize表示设置字体的大小;
(3)plt.xlabel("x", fontsize=12)作用为横坐标轴添加标签’x’;
(4)plt.ylabel("x^2", fontsize=12)作用为纵坐标轴添加标签x^2;
(5)plt.tick_params(axis='both', labelsize=10)作用设置横纵坐标轴刻度的大小,此处大小为10。
(二)绘制散点图scatter
简单的画一个点
import matplotlib.pyplot as plt plt.scatter(3, 9) plt.show()
画一些列点,并对画的图进行编辑修饰:
import matplotlib.pyplot as plt x = [1, 2, 3, 4, 5] squares = [1, 4, 9, 16, 25] # 设置点的大小 plt.scatter(x, squares, s=200) # 设置图表标题,并给坐标轴添加标签 plt.title("square of 'x'", fontsize=22) plt.xlabel("x", fontsize=12) plt.ylabel("x^2", fontsize=22) # 设置坐标轴刻度标记的大小 plt.tick_params(axis='both', which='major', labelsize=10) plt.show()
可以自动计算数据:数值1到5与其对应的平方数的散点图:
import matplotlib.pyplot as plt
xlist = list(range(1,6))
ylist = [x**2 for x in xlist]
plt.scatter(xlist, ylist,
edgecolor='r', c='g', s=150)
plt.title("square of'x'", fontsize=22)
plt.xlabel("x", fontsize=22)
plt.ylabel("x^2", fontsize=22)
plt.axis([0, 6, 0, 30])
plt.tick_params(axis='both', labelsize=10)
plt.show()
解释:
(1)plt.scatter(xlist, ylist, edgecolor='r', c='g', s=150),其中参数edgecolor表示边缘的颜色,此处设置为红色;参数c表示内部的颜色,此处设置为绿色;s表示点的大小;(注意:关于参数c还以如下设置c=(value1, value2, value3),三个value取值范围0到1之间,分别表示红绿蓝三原色。plt.scatter(xlist,ylist, edgecolor='k',c=(1, 0, 0), s=150)见后面的图,注意区别)
(2)plt.axis([0, 6, 0, 30])作用设置横纵坐标轴的范围,前两个表示横坐标轴,后两个表示纵坐标轴。
import matplotlib.pyplot as plt
xlist = [1, 2, 3, 4, 5]
ylist = [x**2 for x in xlist]
plt.scatter(xlist, ylist, edgecolor='k',
c=(1, 0, 0), s=150)
plt.title("square of'x'", fontsize=22)
plt.xlabel("x", fontsize=22)
plt.ylabel("x^2", fontsize=22)
plt.axis([0, 6, 0, 30])
plt.tick_params(axis='both', labelsize=10)
plt.show()
全文图片:
更多教程视频!进群;960410445 即可获取!
,