1.fmt参数
在Python的matplotlib库中的plot函数中,fmt参数是用来设置线条样式、标记和颜色的。plt.plot()函数中的fmt参数是一个字符串,用于控制线条和标记的样式。
其中fmt参数可以包含以下内容:
b
, g
, r
, c
, m
, y
, k
分别代表不同颜色的线条
'o': 表示用圆形标记数据点,并且没有连线;
'-': 表示用直线连接所有的数据点,但不显示任何标记;
'--': 表示用虚线连接所有的数据点,同样也不显示任何标记;
'-.': 表示用短划线连接所有的数据点,同样也不显示任何标记;
's': 表示用正方形标记数据点,并且用直线连接所有数据点;
'^': 表示用上三角形标记数据点,并且用直线连接所有数据点;
'v': 表示用下三角形标记数据点,并且用直线连接所有数据点;
'd': 表示用钻石形标记数据点,并且用直线连接所有数据点;
'<': 表示用左箭头标记数据点,并且用直线连接所有数据点;
'>': 表示用右箭头标记数据点,并且用直线连接所有数据点;
'p': 表示用五角星标记数据点,并且用直线连接所有数据点;
'h': 表示用水平线条标记数据点,并且用直线连接所有数据点;
'H': 表示用垂直线条标记数据点,并且用直线连接所有数据点;
'+': 表示用加号标记数据点,并且用直线连接所有数据点;
'x': 表示用叉号标记数据点,并且用直线连接所有数据点。
fmt参数基本格式
# fmt = '[marker][line][color]'
示例代码
import matplotlib.pyplot as plt #导入matplotlib库中的pyp3ot模块并重命名为 plt
import numpy as np #导入numpy库并重命名为 np
x = np.arange(5) #设置x轴数据
y1 = np.array([52,38,64,34,44])
y2 = np.array([12,18,12,24,14]) #设置y轴数据
bar_width=0.3 #设置宽度
plt.bar(x,y1,bar_width) #绘制柱形图
plt.bar(x + bar_width,y2,bar_width) #绘制柱形图
plt.errorbar(x, y1,yerr=y2,capsize=2, capthick=2,fmt='y--',color='b') #绘制误差棒,使用fmt传参
plt.show() #展示图表
运行结果
2.**kwargs参数
在Python Matplotlib库中,绘图函数通常都会接收一组可变参数kwargs,这些参数允许我们定制图表的各种细节,比如标签、标题、刻度等等。
通过**kwargs指定标记
labels: 设置每个轴的标签 基本格式:plt.plot(x, y, label=' labels')
title: 设置图表的标题 基本格式:plt.title('My First Plot')
legend: 设置图例的位置 基本格式:plt.legend(loc='upper left')
xlim: 设置x轴的范围 基本格式:plt.xlim((0, 10))
ylim: 设置y轴的范围 基本格式:plt.ylim((-10, 10))
xticks: 设置x轴的刻度位置及刻度标签 基本格式:plt.xticks( )
yticks: 设置y轴的刻度位置及刻度标签 基本格式:plt.yticks( )
grid: 设置网格是否显示 基本格式:plt.grid(True)
color: 设置线的颜色 基本格式:plt.plot(x, y, 'r') # red line
linestyle: 设置线的风格,例如实线、虚线、点线等 基本格式:plt.plot(x, y, '-')
marker: 设置数据点的标记类型 基本格式:plt.plot(x, y, 'ro')
linewidth: 设置线的宽度 基本格式: plt.plot(x, y, linewidth=2.5)
fontsize: 设置字体大小 基本格式:plt.title('size', fontsize=20)
示例代码
import matplotlib.pyplot as plt #导入matplotlib库中的pyp3ot模块并重命名为 plt
import numpy as np #导入numpy库并重命名为 np
x = np.array(range(1,16,2)) #设置x轴数据1~16从1开始每隔2个数取一个
y1 = np.random.rand(8,2) #设置y轴数据,生成8个随机数
y2 = np.random.rand(8,2) #设置y轴数据,生成8个随机数
plt.plot(x,y1,color='orange', #设置线条为橙色
linestyle='--', #用虚线链接所有数据点
marker='o', #绘图设置标记点为实心圆
linewidth=2.5) #线宽为2.5
plt.plot(x,y2,color='blue', #设置线条为蓝色
linestyle='-', #用直线线链接所有数据点
marker='v', #绘图设置标记点三角形
linewidth=2) #线宽为2
plt.show() #展示图表
运行结果
3.总结
在matplotlib中,fmt传参是一种较为传统的传递图形参数的方式,主要用于设置线条的样式和数据点的标记。它可以快速方便地绘制出常见的线条和标记样式,例如实线、虚线、空心圆、实心圆等。 而**kwargs传参则是一种更为灵活的方式,它可以传递任意数量的命名参数,以更加精细地控制图形的外观和样式。**kwargs传参的优点在于它能够支持更多的参数选项,例如颜色、透明度、标记大小、填充颜色、边框颜色、边框宽度等等。 两者之间的主要区别在于:fmt传参比较简单直观,适合快速绘制常见图形;kwargs传参更加灵活多样,适用范围更广,适合精细化定制图形外观。在实际使用中,可以根据自身的需要和要求选择。
除了以上函数和方法外,还有很多其他的函数和方法可以用来定制matplotlib的绘图。具体相关信息可以访问Matplotlib — Visualization with Python查阅matplotlib的官方文档。