You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Jupyter-lab中控制Matplotlib 3D图形的显示尺寸等参数?

Matplotlib 3D 图形配置方案(Jupyter Lab 环境)

核心需求:放大图形

创建Figure对象时直接指定figsize参数即可调整整体尺寸,配合dpi还能提升渲染清晰度:

import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import numpy as np

# 创建大尺寸画布,figsize(width, height)单位为英寸
fig = plt.figure(figsize=(12, 10), dpi=100)
ax = fig.add_subplot(projection='3d')

# 生成示例数据
X = np.linspace(-5, 5, 100)
Y = np.linspace(-5, 5, 100)
X, Y = np.meshgrid(X, Y)
Z = np.sin(np.sqrt(X**2 + Y**2))

# 绘制3D曲面
ax.plot_surface(X, Y, Z)

# 直接输出figure变量即可在Jupyter Lab渲染
fig

如果已经创建好Figure,也能动态调整尺寸:

fig.set_size_inches(14, 12)
fig

添加图形边缘线条

针对plot_surface、plot_wireframe这类3D绘图对象,通过edgecolor指定边缘颜色,linewidth调整线条粗细:

# 延续上面的画布和数据
ax.plot_surface(X, Y, Z, edgecolor='black', linewidth=0.5)
# 线框图直接设置颜色和宽度即可
# ax.plot_wireframe(X, Y, Z, color='black', linewidth=1)
fig

设置3D光源效果

用LightSource类自定义光源方向,增强3D立体感:

from matplotlib.colors import LightSource

# azim是绕z轴的方位角,alt是与xy平面的高度角
ls = LightSource(azim=45, alt=60)
# 对Z数据进行着色处理
rgb = ls.shade(Z, plt.cm.viridis)

# 用着色后的数据绘图
ax.plot_surface(X, Y, Z, facecolors=rgb, edgecolor='gray')
fig

内容的提问来源于stack exchange,提问作者Darren Oakey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 22:39:18