首先需要安装matplotlib 在windows中使用pip install matplotlib即可。
下面使用matplotlib绘制一个简单的折线图,我们将使用平方数序列1、4、9、16、25来绘制这个图表。
只需向matplotlib提供如下数字,matplotlib就能完成其他的工作。
import matplotlib.pyplot as plt
squares = [1, 4, 9, 16, 25]
plt.plot(squares)
plt.show()
首先我们导入了模块pyplot,并给它指定了别名plt避免重复输入pyplot。模块pyplot包含了很多用于生成图表的函数。
下面通过一些定制来改善上面第一个图形的可读性,如下所示:
import matplotlib.pyplot as plt
squares = [1, 4, 9, 16, 25]
plt.plot(squares, linewidth=3) # 设置线条的大小
# 设置图表标题, 并给坐标轴加上标签
plt.title('Square Numbers', fontsize=24)
plt.xlabel('Value', fontsize=24)
plt.ylabel('Square of Value', fontsize=24)
# 设置刻度标记的大小
plt.tick_params(axis='both', labelsize=16)
plt.show()
参数linewidth决定了plot()绘制的线条的粗细。函数title()给图表指定了标题多次出现的参数fontsize指定了图表文字中的大小。
函数xlabel()和ylabel()让你可以给每条轴设置标题,而函数tick_params()设置刻度的样式,其中指定的实参将影响x轴和y轴的刻度(axes='both’),并将刻度标记的字号设置为16(labelsize=16)
图形更容易阅读之后,我们发现没有正确的绘制数据,折线图的终点指出4的平方是25,下面我们来修复这个问题。
当你向plot()提高一系列数字时,它假设第一个数据点对应的x坐标为0,但我们第一个点对应的x值是1.为改变这种默认行为我们可以给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=3) # 设置线条的大小
# 设置图表标题, 并给坐标轴加上标签
plt.title('Square Numbers', fontsize=24)
plt.xlabel('Value', fontsize=24)
plt.ylabel('Square of Value', fontsize=24)
# 设置刻度标记的大小
plt.tick_params(axis='both', labelsize=16)
plt.show()
现在plot正确绘制数据。
使用plot时可以指定各种实参,还可以使用众多函数对图形就行定制,后面将继续探索这些定制函数