matplotlib画三维散点图?

  统计/机器学习 数据可视化 Python    浏览次数: 1238
0

比如我有x,y,z三个维度,怎么用matplotlib画一个三维的散点图?


 

吴昊通   2018-04-30 10:46



   2个回答 
4


# -*- coding: utf-8 -*-
from matplotlib import pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D

data = np.random.randint(0, 255, size=[40, 40, 40])
x, y, z = data[0], data[1], data[2]
ax = plt.subplot(111, projection='3d')  # 创建一个三维的绘图工程
#  将数据点分成三部分画,在颜色上有区分度
ax.scatter(x[:10], y[:10], z[:10], c='y')  # 绘制数据点
ax.scatter(x[10:20], y[10:20], z[10:20], c='r')
ax.scatter(x[30:40], y[30:40], z[30:40], c='g')
ax.set_zlabel('Z')  # 坐标轴
ax.set_ylabel('Y')
ax.set_xlabel('X')
plt.show()


SofaSofa数据科学社区 DS面经 问答 实战

瓶子   2018-05-02 12:38

谢谢! - 吴昊通   2018-05-11 13:38
1


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

# 生成数据
data = np.random.randint(0,255,size=[40,40,40])
x,y,z= data[0],data[1],data[2]

# 创建三维对象
fig= plt.figure()
ax = Axes3D(fig)

# 绘制散点图
ax.scatter(x[:10],y[:10],z[:10],c='y')
ax.scatter(x[10:20],y[10:20],z[10:20],c='r')
ax.scatter(x[30:40],y[30:40],z[30:40],c='g')

# 显示图像
plt.show()


SofaSofa数据科学社区 DS面经 问答 实战

SamudraYe   2018-05-12 12:06



  相关主题

matplotlib中bar plot横坐标的数字改成自定义的文字   1回答

如何用python画饼图?   1回答

python直方图y轴显示占比,而不是绝对数值   1回答

matplotlib.pyplot画图的标题中插入变量   1回答

用plt.hist画直方图,怎么返回每个bins的上下界和个数?   1回答

python做图自定义背景色   1回答

seaborn如何显示图?   2回答

python怎么画excel里那种双y轴的图?   1回答

怎么用matplotlib.pyplot画出堆积柱状图?   1回答

matpltlib怎么给直方图加上拟合曲线?   2回答

seaborn报错:regplot() got an unexpected keyword argument 'alpha'   1回答

matplotlib一个画板上多个图叠加,如何决定图层上下?   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!