首页 > 解决方案 > 如何使用 matplotlib 绘制带有 (x, y, z, r, g, b) 的 3d 图像?

问题描述

我有一个具有以下值的数据集:(X、Y、Z、R、G、B),我想将它们绘制为 3d 点图像。

到目前为止我已经这样做了

import pandas as pd
from matplotlib import pyplot as plt
import numpy as np

data = pd.read_csv('wall_data_with_headers.csv')

x = data.x
y = data.y
z = data.z
rgb = [data.red, data.green, data.blue]

fig = plt.figure()
ax = plt.axes(projection='3d')

ax.plot_trisurf(x, y, z,cmap='viridis', edgecolor='none')
ax.set_title('Surface plot')
plt.show()

哪个可以正确显示图像,但是我有一个 RGB 列,我希望能够使用相应的 RGB 值在每个点上渲染它。

输出图像

标签: pythonpandasmatplotlib

解决方案


推荐阅读