当前位置: 首页 > article >正文

python实现3D立柱图demo

在这里插入图片描述

import matplotlib.pyplot as plt
import numpy as np
plt.rcParams["font.sans-serif"] = ["SimHei"]  # 设置字体
plt.rcParams["axes.unicode_minus"] = False  # 该语句解决图像中的“-”负号的乱码问题

# 数据
regions = ['东北', '中南', '华东', '华北', '西南']
years = [2015, 2016, 2017, 2018, 2019]
data = np.random.randint(50, 100, size=(5, 5))

# 创建图形和3D轴
fig = plt.figure(figsize=(10, 8))
ax = fig.add_subplot(111, projection='3d')

# 设置颜色
colors = ['r', 'g', 'b', 'y', 'c']

# 绘制立柱
x_pos = np.arange(len(regions))
y_pos = np.arange(len(years))
x_pos, y_pos = np.meshgrid(x_pos, y_pos)
x_pos = x_pos.flatten()
y_pos = y_pos.flatten()
z_pos = np.zeros_like(x_pos)

dx = dy = 0.8
dz = data.flatten()

for i, (x, y, z, h) in enumerate(zip(x_pos, y_pos, z_pos, dz)):
    ax.bar3d(x, y, z, dx, dy, h, color=colors[i % len(colors)], alpha=0.8)

# 设置坐标轴
ax.set_xticks(np.arange(len(regions)))
ax.set_yticks(np.arange(len(years)))
ax.set_xticklabels(regions)
ax.set_yticklabels(years)
ax.set_zlabel('销售额')

# 设置视角
ax.view_init(elev=20, azim=45)

# 设置标题
plt.title('每年每地区的销售额')

# 显示图形
plt.tight_layout()
plt.show()

http://www.kler.cn/news/342276.html

相关文章:

  • python全栈开发《42.列表的copy函数(深浅拷贝区别)》
  • Java第二阶段---13抽象类和接口---第二节 接口
  • 《网络基础之 HTTP 协议:深入理解请求与响应结构》
  • Leetcode 206.反转链表
  • Spring Boot洗衣店订单系统:提升服务质量
  • Python--解决从Hugging Face的服务器下载某个预训练模型或其相关的文件问题
  • 第四范式发布全新一代文档数字化管理平台Smart Archive 2.0
  • 嵌入式硬件设计详解
  • 通过redis实现高性能计费处理逻辑
  • YOLOv10改进策略【注意力机制篇】| 引入MobileNetv4中的Mobile MQA,提高模型效率
  • Spring Boot洗衣店订单系统:客户体验升级
  • Qt C++设计模式->备忘录模式
  • 超材料受限需突破,水凝胶助力可重构,加密应用显神通
  • 微服务概述
  • 微软最新 Office 办公软件2025下载 – Microsoft 365 正版优惠订阅
  • 安全网络架构
  • linux查看k8s的开机启动状态 systemctl is-enabled 查看开机启动状态
  • JS 怎么监听复制事件 并获取复制内容 并修改复制文本内容
  • Django-rest-framework(DRF)怎么使用redis
  • 洗衣店订单管理:Spring Boot系统创新