Python例項:僅繪製圖例而不繪製實際的圖形
作者:凱魯嘎吉 - 部落格園 http://www.cnblogs.com/kailugaji/
Python例項:僅繪製圖例而不繪製實際的圖形,使用線條來表示不同的資料系列(即使這些資料系列在圖中沒有實際表示)。
# Python例項:僅繪製圖例而不繪製實際的圖形 # 使用線條來表示不同的資料系列(即使這些資料系列在圖中沒有實際表示) # -*- coding: utf-8 -*- # Author:凱魯嘎吉 Coral Gajic # https://www.cnblogs.com/kailugaji/ import matplotlib.pyplot as plt from matplotlib.legend import Legend plt.rcParams['font.size'] = 15 plt.rcParams['font.family'] = 'Times New Roman' fig, ax = plt.subplots(figsize=(10,6)) # 圖長寬比例 color = ['darkgoldenrod', 'orange', '#c56cf0', '#20bf6b', '#747d8c', '#f78fb3', 'b', 'r'] label = ['Algorithm 1', 'Algorithm 2', 'Algorithm 3', 'Algorithm 4', 'Algorithm 5', 'Algorithm 6', 'Algorithm 7', 'Algorithm 8'] # 建立一個空白的線條列表,用於圖例 lines = [plt.Line2D([0], [0], color=color, label=label) for label, color in zip(label, color)] # 使用ax.add_artist()新增圖例到圖表上 legend = Legend(ax, lines, [line.get_label() for line in lines], loc='center', # lower center ncol=int(len(label)/2), # 變成一行:int(len(label)) bbox_to_anchor=(0.5, 0.5), # (0.5, -0.1) frameon=False) ax.add_artist(legend) ax.axis('off') plt.savefig("Plot_Legend.jpg", bbox_inches='tight', dpi=500) plt.show()
結果: