<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
Python-matplotlib實現條形統計圖,供大家參考,具體內容如下
效果圖展示如下:
該程式碼可以處理多個實驗多組觀測值的展示,程式碼如下:
import matplotlib.pyplot as plt import numpy as np from matplotlib.pyplot import MultipleLocator def plot_bar(experiment_name, bar_name, bar_value, error_value=None,): """ Args: experiment_name: x_labels bar_name: legend name bar_value: list(len(experiment_name), each element contains a np.array(), which contains bar value in each group error_value: list(len(experiment_name), each element contains a np.array(), which contains error value in each group Returns: """ # 用於正常顯示中文標籤 # plt.rcParams["font.sans-serif"]=['SimHei'] colors = ['lightsteelblue', 'cornflowerblue', 'royalblue', 'blue', 'mediumblue', 'darkblue', 'navy', 'midnightblue', 'lavender', ] assert len(bar_value[0]) <= len(colors) # if not try to add color to 'colors' plt.rcParams['axes.unicode_minus'] = False plt.style.use('seaborn') font = {'weight': 'normal', 'size': 20, } font_title = {'weight': 'normal', 'size': 28, } # bar width width = 0.2 # groups of data x_bar = np.arange(len(experiment_name)) # create figure plt.figure(figsize=(10, 9)) ax = plt.subplot(111) # 假如設定為221,則表示建立兩行兩列也就是4個子畫板,ax為第一個子畫板 # plot bar bar_groups = [] value = [] for i in range(len(bar_value[0])): for j in range(len(experiment_name)): value.append(bar_value[j][i]) group = ax.bar(x_bar - (len(experiment_name)-3-i)*width, copy.deepcopy(value), width=width, color=colors[i], label=bar_name[i]) bar_groups.append(group) value.clear() # add height to each bar i = j = 0 for bars in bar_groups: j = 0 for rect in bars: x = rect.get_x() height = rect.get_height() # ax.text(x + 0.1, 1.02 * height, str(height), fontdict=font) # error bar if error_value: ax.errorbar(x + width / 2, height, yerr=error_value[j][i], fmt="-", ecolor="black", elinewidth=1.2, capsize=2, capthick=1.2) j += 1 i += 1 # 設定刻度字型大小 plt.xticks(fontsize=15) plt.yticks(fontsize=18) # 設定x軸的刻度 ax.set_xticks(x_bar) ax.set_xticklabels(experiment_name, fontdict=font) # 設定y軸的刻標註 ax.set_ylabel("Episode Cost", fontdict=font_title) ax.set_xlabel('Experiment', fontdict=font_title) # 是否顯示網格 ax.grid(False) # 拉伸y軸 ax.set_ylim(0, 7.5) # 把軸的刻度間隔設定為1,並存在變數裡 y_major_locator = MultipleLocator(2.5) ax.yaxis.set_major_locator(y_major_locator) # 設定標題 plt.suptitle("Cost Comparison", fontsize=30, horizontalalignment='center') plt.subplots_adjust(left=0.11, bottom=0.1, right=0.95, top=0.93, wspace=0.1, hspace=0.2) # 設定邊框線寬為2.0 ax.spines['bottom'].set_linewidth('2.0') # 新增圖例 ax.legend(loc='upper left', frameon=True, fontsize=19.5) # plt.savefig("test.png") plt.show() plt.legend() if __name__ == "__main__": test_experiment_name = ["Test 1", "Test 2", "Test 3", "Test 4"] test_bar_name = ['A', "B", "C"] test_bar_value = [ np.array([1, 2, 3]), np.array([4, 5, 6]), np.array([3, 2, 4]), np.array([5, 2, 2]) ] test_error_value = [ np.array([1, 1, 2]), np.array([0.2, 0.6, 1]), np.array([0, 0, 0]), np.array([0.5, 0.2, 0.2]) ] plot_bar(test_experiment_name, test_bar_name, test_bar_value, test_error_value)
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援it145.com。
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45