2、根据一组测试数据,绘制包含若干个五角星的3D散点图,并将位于指定值范围的五角星设置成指定的颜色:若10<z<20,设置五角星的颜色为#C71585 ;若z>=20,设置五角星的颜色为#008B8B;其他情况设置五角星的颜色为黄色 。 测试数据如下: x = np.random.randint(0, 40, 30) y = np.random.randint(0, 40, 30) z = np.random.randint(0, 40, 30)
时间: 2024-02-21 17:57:28 浏览: 205
用不同颜色创建三维散点
5星 · 资源好评率100%
好的,我来解答您的问题。
您可以使用Matplotlib库中的mplot3d模块来实现该需求。下面是代码实现过程:
```python
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
# 生成测试数据
x = np.random.randint(0, 40, 30)
y = np.random.randint(0, 40, 30)
z = np.random.randint(0, 40, 30)
# 创建3D图像
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
# 绘制五角星
for i in range(len(x)):
color = 'yellow' # 默认颜色为黄色
if 10 < z[i] < 20:
color = '#C71585' # z值在10到20之间,设置颜色为#C71585
elif z[i] >= 20:
color = '#008B8B' # z值大于等于20,设置颜色为#008B8B
ax.scatter(x[i], y[i], z[i], marker='*', s=100, color=color)
# 设置坐标轴标签
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Z')
# 显示图像
plt.show()
```
运行该代码,即可得到包含若干个五角星的3D散点图,符合您的需求。
阅读全文