multi-line

Language: python3

import matplotlib.pyplot as plt import numpy as np import matplotlib.ticker as ticker fig, host = plt.subplots(figsize=(10,7)) par1 = host.twinx() pattern=['long label A', 'long label B', 'long label C', 'long label D', 'long label E'] plt.xticks(range(len(pattern)), pattern, rotation=10) host.set_ylim([0.35, 1.05]) par1.set_ylim([0.5, 4.5]) host.set_xlim([-0.5, len(pattern)-0.5]) thp = np.array([0.5,0.6,0.7,0.76,0.99]) lat = np.array([4.2,3.8,3.3,2.9,2.4]) p1, = host.plot(thp, marker='o', markersize=18, linestyle= '-', color='black',linewidth=7.0,label='Throughput') p2, = par1.plot(lat, marker='^', markersize=18, linestyle= '--', color='gray', linewidth=7.0, label='Average latency') host.tick_params(axis='x',labelsize=20, rotation=10) host.tick_params(axis='y',labelsize=20) par1.tick_params(axis='y',labelsize=20) host.set_ylabel('Throughput',fontsize=20, fontweight='bold') par1.set_ylabel('Latency',fontsize=20, fontweight='bold') lines = [p1,p2] host.legend(lines, [l.get_label() for l in lines], fontsize=20, loc=4) plt.tight_layout() plt.grid() plt.show()