##################### #画图部分
fig = plt.figure(figsize=(16,6),dpi=600)
#绘制折线图
ax1=fig.add_subplot(111)
x = np.arange(1960,2010,1)
ax1.set_ylim([-3,3])
ax1.plot(x,maxlon, color='r',linewidth=2,marker='o',markersize=6)
tt = {'family' : 'Times New Roman','weight' : 'bold','size' :21,'color':'k'}
ax1.text(2011, 2.5, "R = 0.93, p < 0.05",color='k',ha="center",
va="center",rotation=0.4,fontdict=tt)
#####################纵坐标标签
font1 = {'family' : 'Times New Roman','weight' : 'bold','size' :21,'color':'r'}
plt.ylabel("data1",labelpad=12)
plt.ylabel("data1",font1)
####刻度颜色
# plt.tick_params(axis='y',colors='green')
#设置坐标刻度值的大小以及刻度值的字体
plt.tick_params(labelsize=18)
labels = ax1.get_xticklabels() + ax1.get_yticklabels()
[label.set_fontname('Times New Roman') for label in labels]
######################刻度标签
xmajorLocator = MultipleLocator(10)
xminorLocator = MultipleLocator(5)
ymajorLocator = MultipleLocator(1)
yminorLocator = MultipleLocator(1)
ax1.xaxis.set_major_locator(xmajorLocator)#y轴最大刻度
ax1.xaxis.set_minor_locator(xminorLocator)#y轴最小刻度
ax1.yaxis.set_major_locator(ymajorLocator)#y轴最大刻度
ax1.yaxis.set_minor_locator(yminorLocator)#y轴最小刻度
######################边框粗细
ax1.spines['top'].set_linewidth('2.0')#设置边框线宽为2.0
ax1.spines['bottom'].set_linewidth('2.0')#设置边框线宽为2.0
ax1.spines['left'].set_linewidth('2.0')#设置边框线宽为2.0
ax1.spines['right'].set_linewidth('2.0')#设置边框线宽为2.0
######################最大刻度、最小刻度的刻度线长短,粗细设置
ax1.tick_params(which='major', length=13,width=2.3,color='k')#最大刻度长度,宽度设置,
ax1.tick_params(which='minor', length=7,width=1.8,color='k')#最小刻度长度,宽度设置
ax1.tick_params(which='both',bottom=True,top=False,left=True,labelbottom=True,labeltop=False)
plt.rcParams['xtick.direction'] = 'out' #将x轴的刻度线方向设置向内或者外
##第二个纵坐标
ax2=ax1.twinx() #共用x轴
ax2.set_ylim([-3,3]) #y轴范围
plt.plot(x, avalon, color='k',linewidth=2,marker='s',markersize=6,label='MT Index')
####刻度颜色
# plt.tick_params(axis='y',colors='b')
#设置坐标刻度值的大小以及刻度值的字体
plt.tick_params(labelsize=18)
labels1 = ax2.get_xticklabels() + ax2.get_yticklabels()
[label.set_fontname('Times New Roman') for label in labels1]
#####################纵坐标标签设置
font2 = {'family' : 'Times New Roman','weight' : 'bold','size' :21,'color':'k'}
###########纵坐标
plt.ylabel("data2",labelpad=12)
plt.ylabel("data2",font2)
#######################刻度标签
ymajorLocator = MultipleLocator(1)
ax2.yaxis.set_major_locator(ymajorLocator)#y轴最大刻度
yminorLocator = MultipleLocator(1)
ax2.yaxis.set_minor_locator(yminorLocator)#y轴最小刻度
#最大刻度、最小刻度的刻度线长短,粗细设置
######################最大刻度、最小刻度的刻度线长短,粗细设置
ax2.tick_params(which='major', length=13,width=2.3,color='k')#最大刻度长度,宽度设置,
ax2.tick_params(which='minor', length=7,width=1.8,color='k')#最小刻度长度,宽度设置
ax2.tick_params(which='both',bottom=True,top=False,left=True,labelbottom=True,labeltop=False)
plt.rcParams['xtick.direction'] = 'out' #将x轴的刻度线方向设置向内或者外
python画双纵坐标图
最新推荐文章于 2024-09-09 16:57:51 发布