color='black', linestyle='--') # SLA violation定为250ms plot_response, = axis_response.plot(ansresponseList[botton], label='response time', color='#CC3333') plot_container, = axis_container.plot(anssupplypodList[botton], label='container', color='green') plot_throughput, = axis_throughput.plot(ansthroughputList[botton], label='throughput', color='orange') #通过范围限制调整数据在图中的位置(一个是调整上界,可以抬升;一个是调整占比比例,可以让其出现在想出现的区域) axis_cpu.set_ylim(0, 100) axis_response.set_ylim(-400, 400) axis_container.set_ylim(0, 40) axis_response.set_yticks([0, 100, 200, 300, 400, 500, 600]) #右侧轴线颜色与格式设置 axis_cpu.axis['right2'].set_axisline_style('-|>', size=1.5) #设置轴线样式 axis_cpu.axis['right2'].line.set_color(plot_cpu.get_color()) #轴线上色 axis_cpu.axis['right2'].major_ticklabels.set_color( plot_cpu.get_color()) #刻度值上色 axis_cpu.axis['right2'].label.set_color(plot_cpu.get_color()) axis_response.axis['right3'].set_axisline_style('-|>', size=1.5) #设置轴线样式 axis_response.axis['right3'].line.set_color( plot_response.get_color()) #轴线上色 axis_response.axis['right3'].major_ticklabels.set_color( plot_response.get_color()) #刻度值上色 axis_response.axis['right3'].label.set_color(plot_response.get_color())
line_torque_multi_gear = ax_torque_multi_gear.plot( time[order], torque_multi_gear, linestyle=line_style[vehicle_number[order]], color=line_color[temperature_target[order]]) gear_max = max(gear_max, max(gear[order])) power_max = max(power_max, max(power)) lines_set = lines_set + line_power legend_set = [line.get_label() for line in lines_set] ax_power.legend(lines_set, legend_set, loc='upper left') ax_power.set_xlabel('Time(s)') ax_power.set_ylabel('Power(kw)') ax_power.set_ylim(-20, 2 * power_max) ax_power.set_yticks([i * 20 for i in range(0, int(power_max / 20 + 1))]) ax_gear.set_ylabel('Gear/Gear ratio') ax_gear.set_ylim(-gear_max, gear_max + 1) ax_gear.set_yticks([i for i in range(0, int(gear_max) + 1)]) if gear_max > 10: # if it is gear ratio, plot torque*gear ax_torque_multi_gear.set_ylabel('Torque*gear ratio(Nm)') ax_torque_multi_gear.set_ylim(-torque_mutil_gear_max - 50, torque_mutil_gear_max) ax_torque_multi_gear.set_yticks( [i * 500 for i in range(0, int(torque_mutil_gear_max / 500) + 2)]) ax_gear.set_ylim(0, 2 * gear_max) ax_power.legend(lines_set, legend_set, loc='upper right') plt.savefig(fig2_name + '.png', transparent=True) # plt.show()