Scatter Chart — Example for Python matplotlib 3D Chart Realize

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

np.random.seed(42)

n_sample = 500
dim = 3

samples = np.random.multivariate_normal(
    np.zeros(dim),
    np.eye(dim),
    n_sample
)

for i in range(samples.shape[0]):
    r = np.power(np.random.random(), 1.0 / 3.0)
    samples[i] *= r / np.linalg.norm(samples[i])
upper_samples = []
lower_samples = []
for x, y, z in samples:
    if z > x + 2*y - 1:
        upper_samples.append((x, y, z))
    else:
        lower_samples.append((x, y, z))
fig = plt.figure('3D scatter plot')
ax = fig.add_subplot(111, projection = '3d')
uppers = np.array(upper_samples)
lowers = np.array(lower_samples)

ax.scatter(uppers[:, 0], uppers[:, 1], uppers[:, 2], c = 'r', marker = 'o')
ax.scatter(lowers[:, 0], lowers[:, 1], lowers[:,2], c = 'g', marker = '^')
plt.show()
Scatter Chart — Example for Python matplotlib 3D Chart Realize_第1张图片
3D_scatter_plot.png

你可能感兴趣的:(Scatter Chart — Example for Python matplotlib 3D Chart Realize)