Python绘制柱状图并美化

2023-10-27

python绘图合集

往期绘图合集
python绘制简单的折线图
python读取excel中数据并绘制多子图多组图在一张画布上
python绘制带误差棒的柱状图
python绘制多子图并单独显示
python读取excel数据并绘制多y轴图像


本期讲一下python绘制柱状图并使用不同颜色给柱子上色,设置柱子标签字体颜色


前言

柱状图是一种常见的数据可视化方式,它通常用于展示不同类别或不同时间点的数据之间的比较关系。通过柱状图,我们可以直观地看出不同类别或不同时间点之间的数据差异,帮助我们更好地理解数据。

在Python中,可以使用Matplotlib库来绘制柱状图。Matplotlib是一个简单而强大的Python绘图库,可以绘制出各种类型的图表,包括柱状图、折线图、散点图等等。

在绘制柱状图之前,我们需要先准备好数据。通常情况下,我们会将数据存储在NumPy数组中,然后使用Matplotlib中的bar函数来进行绘图。


提示:以下是本篇文章正文内容,下面案例可供参考

一、简单创建柱状图

import matplotlib.pyplot as plt
import numpy as np

# 生成实验数据
x = np.array(['A', 'B', 'C', 'D', 'E'])
y = np.array([12, 28, 19, 23, 20])

# 绘制柱状图
fig, ax = plt.subplots()
ax.bar(x, y)

# 显示图表
plt.show()

在这里插入图片描述
上面的代码中,我们首先使用NumPy库生成了一组实验数据,然后使用Matplotlib中的bar函数绘制了一个最基本的柱状图。其中,x是柱子的标签,y是柱子的高度。

接下来,我们对柱状图进行美化,使其更加漂亮。我们可以修改柱子的颜色、添加标题和标签、调整字体风格和大小等等。

二、美化

1.引入库

import matplotlib.pyplot as plt
import numpy as np

# 生成实验数据
x = np.array(['A', 'B', 'C', 'D', 'E'])
y = np.array([12, 28, 19, 23, 20])

# 设置字体样式和大小
plt.rcParams['font.family'] = ['Times New Roman']  # 中文字体为楷体,英文字体为新罗马字体
plt.rcParams['font.size'] = 24  # 坐标轴字号为16


# 绘制柱状图,设置柱子颜色和标签
fig, ax = plt.subplots(figsize=(10, 6))
bar_plot = ax.bar(x, y, width=0.5, color=['#00BFFF', '#FF8C00', '#32CD32', '#FF69B4', '#BA55D3'])

# 添加标题、标签和图例
ax.set_title('Tempreture/℃', fontsize=24)  # 标题字号为20
ax.set_xlabel('city', fontsize='28')
ax.set_ylabel('value', fontsize='28')
ax.legend(bar_plot, labels=x, loc='best')

# 调整字体颜色、柱子宽度等其他参数
for rect in bar_plot:
    height = rect.get_height()
    ax.text(rect.get_x() + rect.get_width()/2., height+1, '%d' % int(height),
            ha='center', va='bottom', fontsize=20, color='blue',fontname='Times New Roman')  # 字体颜色蓝色
ax.spines['top'].set_visible(False)
ax.spines['right'].set_visible(False)
ax.tick_params(axis='x', direction='out', length=6, width=2)
ax.tick_params(axis='y', direction='out', length=6, width=2)

# 显示图表
plt.show()

2.代码解读

上面的代码中,通过修改字体风格和大小、调整柱子颜色、添加标题和标签、调整字体颜色等方法,让柱状图更加漂亮。其中,我们使用了新罗马字体、蓝色字体颜色、五种不同颜色的柱子等。

三、 运行结果

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python绘制柱状图并美化 的相关文章

随机推荐

  • 凯云科技惊艳亮相深圳国际电子展,为半实物仿真测试领域注入新活力

    高算力 低功耗 见证PPA影响力为社会智能化赋能 elexcon 2023深圳国际电子展于8月23至25日在深圳会展中心 福田 亮相 展览面积6万平方米 吸引全国优秀的展商600余家 凯云联创 北京 科技有限公司携多款软硬件产品惊艳亮相 0
  • 线性代数之 向量的内积,外积,长度,正交与正交矩阵

    线性代数之 向量的内积 外积 长度 正交和正交矩阵 向量的内积 向量的外积 向量的长度 向量正交 正交矩阵 正交矩阵的扩展 向量的内积 对于列向量 a b R n
  • 使用GPU版本的torch

    声明 1 我是不知道安装torch到底需不需要安装CNDA和CUDNN的 我是按照其他文章所说 才下载的 CNDA和CUDNN 通过一些视频展示 下载GPU版本的torch是包含了CNDA组件的 所以我觉得可能不需要下载CNDA和CUDNN
  • GraphEdit 实用手册

    GraphEdit是微软公司开发一个用于建立和测试音视频程序的可视化工具 它建立在Graph Filter的原则上 Directshow是基于模块化 每个功能模块即单元组件都采取COM组件方式 称为Filter 将Filter串联在一起就形
  • R语言 报错 错误: pandoc document conversion failed with error 1033 停止执行

    最近在学习一个R语言的时间序列课程 用RStudio的RMarkdown时遇见了这个报错 错误 pandoc document conversion failed with error 1033 停止执行 神奇 仔细查找了很久才发现自己代码
  • 12-9 案例:处理复杂的线程返回结果

    1 问题来源 thrd create 函数功能为新建一个线程 传入待执行的函数 待执行函数的格式要求如下 typedef int thrd start t void arg 这意味着待执行函数只能返回 int 类型值 接收 void arg
  • 如何关闭防火墙、windows defender的设置不可用。该应用已从服务器中卸载

    一 windows defender的设置不可用 该应用已从服务器中卸载 操作系统可能是gho镜像做的 被精简了 开始 运行 CMD 输入gpedit msc 回车 如果失败 先进行第二步在返回来进行第一步 二 1 在管理员bai命令提示d
  • 神经网络及其matlab仿真

    本文进行了神经网络原理简介 并对蜢虫分类问题进行了matlab仿真 一 神经网络介绍 神经网络是由具有适应性的简单单元组成的广泛并行互联的网络 它的组织能够模拟生物神经系统对真实世界物体作出的交互反应 神经网络中最基本的成分是神经元 neu
  • mysql 减法,mysql 减法

    SQL codemysql gt desc t a175460677 Field Type Null Key Default Extra uName char 3 YES NULL money float 10 2 YES NULL
  • Arduino平衡小车

    Arduino平衡小车 1 概述 此Arduino平衡小车在主控方面由Arduino UNO R3和Arduino sensor shield v5 0传感器扩展板组成 采用TB6612FNG作为电源和电机之间的中介给带编码器的直流电机供电
  • Nacos鉴权和配置加密

    nacos存在可以任意用户添加的问题 更改提交方式为POST 访问 nacos v1 auth users test111username test111 password 123456 新建一个账号test111 可以看到创建用户成功 如
  • STM32读写内部Flash(介绍+附代码)

    概述 内部Flash读写详解 一 介绍 首先我们需要了解一个内存映射 stm32的flash地址起始于0x0800 0000 结束地址是0x0800 0000加上芯片实际的flash大小 不同的芯片flash大小不同 RAM起始地址是0x2
  • SMTP:防止追踪发件人IP

    1 使用网页版gmail发信 邮件头不带X Originating IP 2 javamail调用SMTP时加代理 props put mail smtp socks host 10 11 22 2 props put mail smtp
  • 背包

    01背包 问题描述 有N件物品和一个容量为V的背包 第i件物品的体积是weight i 价值是value i 求解将哪些物品装入背包可使价值总和最大 实现代码 include
  • Java-查看运行时对象占用内存

    Java 查看运行时对象占用内存 一 查看项目运行时的进程ID jps 二 导出运行信息到二进制文件中 选择想要查看程序的进程ID 例如 jmap dump format b file heap bin 20772 不能在系统目录中创建 会
  • STM32单片机蓝牙-APP全自动洗衣机水位检测洗涤脱水排水

    实践制作DIY GC0164 蓝牙 APP全自动洗衣机水位检测 基于STM32单片机设计 蓝牙 APP全自动洗衣机水位检测 二 功能介绍 硬件组成 STM32F103C单片机最小系统 LCD1602显示器 1个5V直流电机 低速洗衣高速脱水
  • NC portal保存只能获取当前子表选中行的数据集问题

    保存是获取子表数据只能获取到当前选中的行 代码如下 LfwViewmain LfwRuntimeEnvironment getWebContext getPageMeta getView main Dataset bodyds main g
  • mysql回收用户权限

    1 创建test1用户 select password test1 password test1 06C0BF5B64ECE2F648B5F048A71903906BA08E5C create user test1 localhost id
  • 设计模式--策略模式

    策略模式 属于行为型模式基本原理 一个类的行为或其算法可以在运行时更改主要流程 1 创建策略基类 并根据不同行为实例化不同的策略类 2 使用时选择合适的策略类注意 如果一个系统的策略太多最好考虑其他模式 include
  • Python绘制柱状图并美化

    python绘图合集 往期绘图合集 python绘制简单的折线图 python读取excel中数据并绘制多子图多组图在一张画布上 python绘制带误差棒的柱状图 python绘制多子图并单独显示 python读取excel数据并绘制多y轴