matplotlib入门 ----plot()函数

发布时间:2026/7/28 18:10:07
matplotlib入门 ----plot()函数 matplotlib是Python里十分强大的数学绘图库因为看着挺好玩的所以姑且入门学了一下。入门示例import matplotlib.pyplot as plt figure [0,1,2,3,4,5,6] plt.plot(figure) plt.show()结果分析我们导入matplotlib模块的pyplot类并设置别名为pltpyplot类提供了一个绘图框架我们绘制的图形将在这上面呈现。之后我们定义了一个列表并把它传入plot()函数中plot()函数会根据列表中的数据尝试绘制出有意义的图形。然后我们调用plt的show()方法该方法会打开matplotlib查看器并显示绘制的图形。可以看到显示出一条正比例直线plot()函数究竟是如何工作的呢再看一个例子import matplotlib.pyplot as plt figure [1,1,1,1,1,1] plt.plot(figure) plt.show()结果结合两个例子猜也猜到了。我就不绕弯子了接下来给出plot()函数的语法格式plt.plot(x,y,linestyle-,linewidth2,color,labelplot figure)x x轴。y y轴。linestyle 折线样式默认为直线。style样式有(-)直线(–)虚线(-.)短距线(:)虚线。linewidth 折线宽度默认为2。color 设置颜色。label 设置标签文本。上面两个例子只传入了一组数据在只传入一组数据的情况下plot()会把这组数据视作y轴数据并自动使用[0,1,2,3…]作为x轴数据。注意最开始也提到了plot()函数只会根据所给的数据尝试绘制图形因此有时候它可能无法得到我们想要的图形比如我们想用这种方法得到一个抛物线的时候。import matplotlib.pyplot as plt figure [0,1,4,9,16,25] plt.plot(figure) plt.show()结果可以看到这并不是一条光滑的曲线因为数据太少。因此如果想要绘制出更多的图形可以尝试定制函数。plot()函数使用示例#1import matplotlib.pyplot as plt x_data [100,200,300,400,500,600] y_data [2014,2015,2016,2017,2018,2019] plt.plot(x_data,y_data,ls--,lw4,colorred)#linestyle、linewidth可使用简写 plt.show()结果#2import matplotlib.pyplot as plt x_data [100,200,300,400,500,600] y1_data [2014,2015,2016,2017,2018,2019] y2_data [1800,1850,1900,1950,2000,2050] plt.plot(x_data,y1_data,x_data,y2_data,linestyle--,colorblack) plt.show()结果#3import matplotlib.pyplot as plt x_data [100,200,300,400,500,600] y1_data [2014,2015,2016,2017,2018,2019] y2_data [1888,1890,1892,1894,1896,1898] plt.plot(x_data,y1_data,linewidth3,linestyle--,colorred) plt.plot(x_data,y2_data,linewidth3,linestyle-.,colorblue) plt.show()结果#4import numpy as np import matplotlib.pyplot as plt x np.arange(-6,6,0.1) y1 np.sin(x) y2 np.cos(x) plt.plot(x,y1) plt.plot(x,y2) plt.show()结果#5 其它方法配置属性除了直接在plot()中指定参数配置图形属性外也可以在plot()函数外利用其它方法配置属性具体的方法有1) 通过 set_%%() 方法2) 通过 set()方法3) 通过 setp()方法。示例import matplotlib.pyplot as plt y [0,1,4,9,16] line plt.plot(y)[0] line.set_color(r) line.set_linestyle(-.) plt.show() --------------------------------- import matplotlib.pyplot as plt y [0,1,4,9,16] line plt.plot(y)[0] line.set(colorr,ls-.) plt.show() ---------------------------------- import matplotlib.pyplot as plt y [0,1,4,9,16] line plt.plot(y)[0] plt.setp(line,colorr,ls-.) plt.show() ---------------------------------- 以上三种方法得到的图形是一样的。结果添加更多细节我们可以使用plt的title()方法添加图标标题使用xlabel()、ylabel()方法为每条轴设置标题、大小等参数还可以使用tick_params()方法指定刻度标记的大小。示例import matplotlib.pyplot as plt figure [0,1,4,9,16] plt.plot(figure) plt.title(Figure 1,fontsize 18,color red) plt.xlabel(x value,fontsize 14) plt.ylabel(y value,fontsize 14) plt.tick_params(axisboth,labelsize14) plt.show()结果