import numpy as np
import matplotlib.pyplot as plt
import xlrd
plt.rcParams['font.sans-serif'] = ['SimHei'] # 如果要显示中文字体,则在此处设为:SimHei
plt.rcParams['axes.unicode_minus'] = False # 显示负号
t = xlrd.open_workbook('美化数据.xls')
sheet = t.sheet_by_index(0)
x1_data=[] #需要将数据储存在空列表中才可调用绘图
y1_data=[]
x2_data=[]
y2_data=[]
x3_data=[]
y3_data=[]
x4_data=[]
y4_data=[]
for row in range(sheet.nrows):
content1 = sheet.cell_value(row,0)
x1_data.append(content1)
content2 = sheet.cell_value(row,1)
y1_data.append(content2)
content3 = sheet.cell_value(row,2)
x2_data.append(content3)
content4 = sheet.cell_value(row,3)
y2_data.append(content4)
content5 = sheet.cell_value(row, 4)
x3_data.append(content5)
content6 = sheet.cell_value(row, 5)
y3_data.append(content6)
content7 = sheet.cell_value(row, 6)
x4_data.append(content7)
content8 = sheet.cell_value(row, 7)
y4_data.append(content8)
plt.figure(figsize=(10, 5))
plt.grid(linestyle="--")
ax = plt.gca()
ax.spines['top'].set_visible(False) # 去掉上边框
ax.spines['right'].set_visible(False) # 去掉右边框
plt.plot(x1_data, y1_data, color="black", label="数据1", linewidth=1.5)
plt.plot(x2_data, y2_data, "k--", label="数据2", linewidth=1.5)
plt.plot(x3_data, y3_data, color="red", label="数据3", linewidth=1.5)
plt.plot(x4_data, y4_data, "r--", label="数据4", linewidth=1.5)
plt.title("正向骨架曲线", fontsize=12, fontweight='bold') # 默认字体大小为12
plt.xlabel("位移", fontsize=13, fontweight='bold')
plt.ylabel("荷载", fontsize=13, fontweight='bold')
plt.xlim(0,16) # 设置x轴的范围
plt.ylim(0,80)
plt.xticks(np.linspace(0,16,9,endpoint=True),fontsize = 10)
plt.yticks(np.linspace(0,80,9,endpoint=True),fontsize = 10)
# plt.legend() #显示各曲线的图例
plt.legend(loc=2, numpoints=1)
leg = plt.gca().get_legend()
ltext = leg.get_texts()
plt.setp(ltext, fontsize=12, fontweight='bold') # 设置图例字体的大小和粗细
plt.show()
在python中,也提供了很多中好看的颜色,便于使用者进行调用,那笔者随便调换一些颜色来看一下效果吧!!!
图形1
plt.plot(x1_data, y1_data, color="#0D59E6", label="数据1", linewidth=1.5)
plt.plot(x2_data, y2_data, color="#14827B",linestyle='--', label="数据2", linewidth=1.5)
plt.plot(x3_data, y3_data, color="#E81A8F", label="数据3", linewidth=1.5)
plt.plot(x4_data, y4_data, color="#76A1F2",linestyle='--', label="数据4", linewidth=1.5)
其结果如下图所示:
plt.plot(x1_data, y1_data, color="#845EC2", label="数据1", linewidth=1.5)
plt.plot(x2_data, y2_data, color="#BE93FD",linestyle='--', label="数据2", linewidth=1.5)
plt.plot(x3_data, y3_data, color="#00C9A7",label="数据3", linewidth=1.5)
plt.plot(x4_data, y4_data, color="#76A1F2",linestyle='--', label="数据4", linewidth=1.5)
上面图的颜色是不是好看很多了呢?大家可以自行尝试不同颜色搭配,看看哪几种颜色搭配更加好看。如果读者有更好的颜色搭配,欢迎咨询笔者进行探讨!!!