使用python的matplotlib 画柱状图

news2025/3/13 4:17:28

样式一:
在这里插入图片描述

import numpy as np
import matplotlib.pyplot as plt

# 设置字体
plt.rcParams['font.sans-serif'] = ['Times New Roman']

# Define data and error values
precision_data = [0.349209635, 0.270397704, 0.297925, 0.4826985, 0.4273875,0.304880102,0.27524925 ,0.555276857 ,0.670770153]
precision_errors = [0.042316368, 0.067922638, 0.051424869, 0.064362478,0.061984597 ,0.058466114 ,0.053526879 ,0.082872212, 0.059994839]
recall_data = [0.56398724, 0.61202551, 0.34742925, 0.71364175,0.2836455 ,0.92711199 , 0.8159265,0.345950587 ,0.751530867 ]
recall_errors = [0.031384024, 0.193760725, 0.04395216, 0.133768497 , 0.070772195, 0.018860383, 0.131817215,0.157283313 ,0.133413839]
shd_data = [3.674479167, 5.974489796, 5.3825, 2.2325 ,4.02 ,4.775510204 , 5.3625 , 3.724642857,2.390306122]
shd_errors = [0.596049484, 0.800855585, 0.344497564, 0.769484985 ,0.806615504 ,0.568924124 , 0.59870694,0.976687968 ,0.99402855]
F1_data = [0.419679948, 0.384364541, 0.31320825, 0.5667935 , 0.33320625, 0.445818622 , 0.39836825, 0.380561112, 0.697417092]
F1_errors = [0.037000734, 0.105593087, 0.042420443, 0.08536647,0.064445529 , 0.03587304,0.038227198 , 0.080015292 ,0.085268364]

# plt.figure(dpi=100)
plt.figure(figsize=(5,5),dpi=100)

# Define x-axis labels %pwLiNGAM
labels = ['Patel', 'pw', 'isGC', 'Two-Step','ACOCTE','EC-GAN','CR-VAE','CVAEEC','MetaCAE']

# Define colors for each bar
# colors = ['#1f77b4', '#aec7e8', '#ff7f0e', '#2ca02c',"#98df8a",'#00ffff','#ff0000','#aa00ff','#0000ff']
colors = ['#A40545', '#F46F44', '#FDD985', '#E9F5A1',"#7FCBA4",'#4B65AF','#ff0000','#aa00ff','#0000ff']

# Create bar chart with error bars and differentiated colors
fig, ax = plt.subplots()
ax.bar(labels, shd_data, yerr=shd_errors, align='center', alpha=0.6, ecolor='#404040', capsize=10, color=colors)

# Add labels and title
# ax.set_ylabel('Outcome')
ax.set_title('SHD',fontdict={'family' : 'Times New Roman', 'size'   : 22,'weight':'bold'})
# ax.set_xticklabels(labels,rotation=-45)
for tick in ax.get_xticklabels():
    tick.set_rotation(-45)
    # tick.set_ha('right')

plt.xticks(fontproperties = 'Times New Roman', size = 16)
plt.yticks(fontproperties = 'Times New Roman', size = 16)

# plt.tight_layout(pad=0.05)
plt.subplots_adjust(left=0.18, bottom=0.18)



# Show plot
plt.savefig("shd.png")
plt.show()

样式二:
在这里插入图片描述

# -*- coding: utf-8 -*-

import numpy as np
import matplotlib.pyplot as plt
from matplotlib import rcParams

rcParams['font.family'] = 'Times New Roman'
# 数据
labels = ['Precision', 'Recall', 'F1']
cgbn_values = [0.34, 0.37, 0.35]
gc_values = [0.66, 0.70, 0.68]
notears_values = [0.49, 0.47, 0.50]
gae_values = [0.64, 0.60, 0.61]

CRVAE_values=[0.51, 0.56, 0.53]
dpmlec_values = [0.70, 0.72, 0.71]



x = np.arange(len(labels))  # 柱状图的 x 坐标位置
width = 0.13  # 柱子的宽度

fig, ax = plt.subplots(figsize=(8,5))
rects1 = ax.bar(x - width/2, cgbn_values, width, label='CGBN', color='#528AAF')
rects2 = ax.bar(x + width/2+0.01, gc_values, width, label='GC', color='#EFBA42')
rects3 = ax.bar(x + 3*width/2+0.02, notears_values, width, label='NOTEARS', color='#D4BA82')
rects4 = ax.bar(x + 5*width/2+0.03, gae_values, width, label='GAE', color='#B26A70')
rects5 = ax.bar(x + 7*width/2+0.04, CRVAE_values, width, label='CR-VAE', color='#A2CFC6')
rects5 = ax.bar(x + 9*width/2+0.05, dpmlec_values, width, label='DPM-LEC', color='#528AAF')

# 设置坐标轴标签和标题


# 设置 x 轴刻度标签的字体大小
ax.set_xticks(x+ width*2)
# ax.set_xticklabels(labels, fontsize=12)


# ax.set_xticks(x + width/2)
ax.set_xticklabels(labels, fontsize=12)


# 设置 y 轴刻度标签的字体大小
ax.tick_params(axis='y', labelsize=12)

# 移除柱子上的数字
def autolabel(rects):
    pass

# 添加图例
ax.legend(loc='upper center', bbox_to_anchor=(0.5, 1.15), ncol=6)


plt.savefig('bar_chart.pdf', format='pdf', bbox_inches='tight', dpi=300)

# 显示图形
plt.show()


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1040045.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Elsevier旗下】2区CCF推荐,1994年收录,2个月录用!接收人工智能领域

计算机领域 • 好刊速递 出版社:Elsevier(CCF-C类) 影响因子(2022):4.0-5.0 期刊分区:JCR2区,中科院3区 检索数据库:SCIE 在检 版面类别:正刊 数据库检…

PostMan接口测试教程

1、下载和安装 Postman: 前往 Postman 官网 (https://www.postman.com),下载适用于你的操作系统的 Postman 客户端。 执行下载后的安装程序,并按照安装向导的指引完成安装过程。 2、创建一个新的集合: 打开 Postma…

个人废品回收小程序制作步骤详解

在当今的环保时代,个人废品回收小程序的发展显得尤为重要。为了满足这一需求,本文将详细介绍如何制作一个个人废品回收小程序。 第一步,进入乔拓云网后台,点击【轻应用小程序】进入设计小程序页面。在这个页面,你可以看…

Neo4j 与 Cypher 基础

更好的阅读体验 \huge{\color{red}{更好的阅读体验}} 更好的阅读体验 简介 Neo4j 是用 Java 实现的开源 NoSQL 图数据库。从2003年开始开发,2007年正式发布第一版,其源码托管于 GitHub。 与常见的关系型数据库不同,Neo4j 基于图图结构来表示…

数据结构:堆的简单介绍

目录 堆的介绍:(PriorityQueue) 大根堆:根节点比左右孩子节点大 小根堆:根节点比左右孩子节点小 堆的存储结构: 为什么二叉树在逻辑上用满二叉树结构,而不是普通二叉树呢? 因为如果是普通二叉树会造成资源的浪费​编辑 堆的介绍:(PriorityQueue) 堆又称优先级队列,何为优先…

Redis初步学习

简单了解 Redis(Remote Dictionary Server)是一个开源的内存数据库,也被称为数据结构服务器。它以键值对的形式存储数据,并提供了丰富的数据结构,如字符串、列表、集合、有序集合、哈希表等。以下是对Redis的详细介绍…

天府蜂巢成都直播产业基地好不好?全成都做直播的头部企业都在这!

随着直播产业的发展,直播内容的不断丰富,数字科技的兴起为直播行业的沿革提供了技术支撑,网络直播成为新的热门赛道,以及拉动经济的新引擎。成都天府蜂巢直播产业基地位于的成都科学城兴隆湖高新技术服务产业园,不仅是…

活动回顾 | 暴雨也无法阻挡的奔赴,2023 Meet TVM · 深圳站完美收官!

2023 Meet TVM 深圳站于 2023 年 9 月 16 日在腾讯大厦成功举办,百余名参与者亲临现场,聆听讲师们的精彩分享。 作者 | xixi 编辑 | 三羊 本文首发于 HyperAI 超神经微信公众平台~ **由 MLC.AI 社区和 HyperAI超神经主办,Openbayes贝式计算…

网关-开放API接口签名验证方案

接口安全问题 请求身份是否合法?请求参数是否被篡改?请求是否唯一? AppId&AppSecret 请求身份 为开发者分配AppId(开发者标识,确保唯一)和AppSecret(用于接口加密,确保不易被…

加强企业内部数据安全:DataSecurity Plus助您一臂之力

随着数字化时代的到来,企业内部数据安全变得比以往任何时候都更加重要。数据是现代企业的生命线,其中包含了机密客户信息、财务数据、知识产权以及其他敏感信息。因此,保护这些数据免受威胁和泄露是每个企业的首要任务之一。为了助力企业实现…

图片在线制作轻松创作高品质图片,根据自己的需求去绘制编辑适合自己的图片

亲爱的朋友们,你是否曾为了获取一张满足自身要求的图片而烦恼?现在,让我们向你揭秘一种高效绘制图片的神技!无论你是设计师、创作者还是普通用户,都能通过这种方法轻松实现定制化的需求,让你的创意得以完美…

静态时序分析(STA)学习记录

STA学习记录 setup timing check:hold timing check :multiple path:path type:四种Timing Path:Latch Timing check(Time Borrowing):没事看看文档总是可以学到很多新东西,提炼精华,方便复习 Timing Path; setup timing check: 我(edge)没到你(data)得提前到 Slack =…

SpringCloud 学习(一)简介和环境搭建

1. 简介 1.1 SpringCloud SpringCloud 基于 SpringBoot 提供了一套微服务解决方案,包括服务注册与发现,配置中心,全链路监控,服务网关,负载均衡,熔断器等组件,除了 NetFlix 的开源组件做高度抽…

【BUG】Failed_to_execute_goal_org.springframework

uuid: 606989c0-5b73-11ee-b9af-9fe36aef5f9f title: tags: [Spring Boot, Maven, 插件, 报错, 类文件版本, 兼容, 解决方案 ] categories: [ ] date: 2023-09-25 15:15:59 “ 有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准…

阿里云服务器怎么使用?网站上线全教程参考

阿里云服务器使用教程包括云服务器购买、云服务器配置选择、云服务器开通端口号、搭建网站所需Web环境、安装网站程序、域名解析到云服务器公网IP地址,最后网站上线全流程,阿小云分享阿里云服务器详细使用教程: 目录 阿里云服务器使用教程 …

【ccf-csp题解】第5次csp认证-第三题-模板生成系统-字符串模拟

题目描述 思路分析 这个是一个简单的字符串模拟题,但蕴藏了一些细节值得挖掘,故写于博客之中进行记录。 第一、关于数据的读入 对于前m行,直接使用getline函数进行读入即可,注意在读取完m和n之后,要写一个getchar&a…

德大黄鱼开捕 年产量20万吨 京东超市多举措保障黄鱼品质

作为“中国大黄鱼之都”,宁德大黄鱼占全国大黄鱼总产值产量均在90%以上。有关方面预计,今年全年宁德大黄鱼产量达20万吨,年增产10%,直接经济产值超百亿元。 宁德大黄鱼开捕活动,由宁德市政府、宁德渔业协会、京东超市…

Mooctest

开发者 测试框架junit 1.字符串不能除 2.a给了c 3. 4. 5.输入是否>0 6.注释

笔试强训Day3

学了一坤时Linux,赶紧来俩道题目放松放松。 T1:在字符串中找出连续最长的数字串 链接:在字符串中找出连续最长的数字串__牛客网 输入一个字符串,返回其最长的数字子串,以及其长度。若有多个最长的数字子串&#xff0c…

CSAPP Attack Lab

CSAPP Attack Lab 历经一个多星期,之前写完第一部分就一直放着了,稍微补充了一下知识,差点让第二部分吓到,没想到做起来还挺简单哈 这次任务是让我们当一个远古时期的萌新黑客,是不是很酷呀 这次上来才发现看不懂让…