python实现3D立柱图demo

bash 复制代码
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()
相关推荐
huangdong_1 分钟前
电商商品SKU图自动分类技术实现:从DOM解析到智能归档
开发语言
dog2504 分钟前
网络长尾延时的重尾本质
开发语言·网络·php
戴西软件17 分钟前
戴西 DLM 许可授权管理系统:破解无网络环境下工业软件授权难题,助力制造企业降本增效
网络·人工智能·python·深度学习·程序人生·算法·制造
Dxy123931021626 分钟前
Python线程锁:为什么多线程会“打架“,以及怎么解决
开发语言·前端·python
guygg8838 分钟前
人行走作用下板的振动响应 MATLAB 仿真
开发语言·matlab
小白学大数据1 小时前
线上故障急救:依托 OpenClaw 日志排查 403 和 503 问题
爬虫·python·selenium·数据分析
小二·1 小时前
Next.js 15 全栈开发实战
开发语言·javascript·ecmascript
fox_lht1 小时前
15.3.改进我们之前的输入、输出项目
开发语言·后端·学习·rust
databook1 小时前
用SymPy自动因式分解:从面积拼图到代数恒等式
python·数学·动效
智海深蓝1 小时前
海上平行战场:态势模拟三维可视化平台
3d·ue5