1、调整线段颜色、粗细以及线段样式
# 颜色数组
color = ['#e6194B', '#3cb44b', '#ffe119', '#4363d8',
'#f58231', '#911eb4', '#42d4f4', '#f032e6',
'#bfef45', '#fabed4', '#469990', '#dcbeff',
'#9A6324', '#fffac8', '#800000', '#aaffc3',
'#808000', '#ffd8b1', '#000075', '#a9a9a9',
'#ffffff', '#000000']
#线段样式数组
lineStyle = ['-', '--']
# linewidth设置线段粗细,c设置颜色,参数类型为数组
#linestyle设置线段样式,参数类型为数组:'--'表示虚线
plt.plot(x, yKaksDates[p], linewidth=1.8, c=color[o], linestyle=lineStyle[o])
2、设置x轴和y轴标签字号大小
# fontsize设置x轴标签字号大小
plt.xlabel("x轴标签", fontsize=16) # X轴标签
plt.ylabel("y轴标签", fontsize=16) # Y轴标签
3、设置线段标签字号大小
# fontsize设置线段标签字号大小
plt.legend(name, loc='best',fontsize=16)
4、解决x,y轴中文乱码问题
# 解决中文乱码问题
plt.rcParams['font.sans-serif'] = 'SimHei'
plt.rcParams['axes.unicode_minus'] = False
完整代码和效果图输出
# 画图函数
def drawKaKs(fileName, yKaksDates):
plt.figure(figsize=(12, 8), dpi=300) # 创建绘图对象
# 是否显示背景网格
matplotlib.rc('axes')
# x轴数据赋值
x = []
name = []
# 颜色数组
color = ['#e6194B', '#3cb44b', '#ffe119', '#4363d8',
'#f58231', '#911eb4', '#42d4f4', '#f032e6',
'#bfef45', '#fabed4', '#469990', '#dcbeff',
'#9A6324', '#fffac8', '#800000', '#aaffc3',
'#808000', '#ffd8b1', '#000075', '#a9a9a9',
'#ffffff', '#000000']
lineStyle = ['-', '--']
o = 0
# 解决中文乱码问题
plt.rcParams['font.sans-serif'] = 'SimHei'
plt.rcParams['axes.unicode_minus'] = False
for p in yKaksDates:
for i in range(0, len(yKaksDates[p])):
x.append(i)
# # 颜色采用rgb格式,随机数生成
# r = random.random()
# b = random.random()
# g = random.random()
# color = (r, g, b)
# labelsize调整x,y轴刻度字号大小
plt.tick_params(labelsize=16)
# linewidth设置线段粗细,c设置颜色,参数类型为数组
#linestyle设置线段样式,参数类型为数组:'--'表示虚线
plt.plot(x, yKaksDates[p], linewidth=1.8, c=color[o], linestyle=lineStyle[o])
i = i + 1
o = o + 1
x = []
# fontsize设置线段标签字号大小
plt.legend(name, loc='best',fontsize=16)
# 绘制ka/ks为1的水平参照线段
plt.hlines(1, 0, len(yKaksDates[p]))
# fontsize设置x轴标签字号大小
plt.xlabel("x轴标签", fontsize=16) # X轴标签
pictureName = fileName +'.jpg'
# fontsize设置y轴标签字号大小
plt.ylabel("y轴标签", fontsize=16) # Y轴标签
plt.savefig(pictureName) # 保存