python - 在python中将列表转换为二维数组

标签 python arrays list matplotlib colorbar

我正在尝试创建一个绘图,并且这些点用颜色条进行着色。

matplotlib.pyplot.scatter(x,y, c=time_color)

我有一个 time_color 列表,例如

time_color = [0, 4, 3, 3, 2, 3, 5, 4, 0, 3, 3, 2, 1, 2, 3, 4, 5, 1, 4, 3, 2]

不幸的是,绘图命令不接受列表来指定颜色。所以我将它转换为数组

numpy.array(time_color)

这给了我一个一维数组。

numpy.ndim(numpy.array(time_color))

如何将列表转换为二维数组以生成三维图(第三维是颜色)?

谢谢。

最佳答案

实际上,matplotlib 的散点图确实接受颜色栏列表。 例如,以下是完全合法的,并创建一个以颜色为第三维的 2D 绘图:

matplotlib.pyplot.scatter( range(0,10), range(0,10), c=range(0,10) )

enter image description here

如果您想要颜色为第四维的 3D 绘图,您可以使用相同的想法:

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

fig = plt.figure()
ax = Axes3D(fig) #Or: ax = fig.add_subplot(111, projection='3d')

ax.scatter( range(0,10), range(0,10), c=range(0,10) )

enter image description here

关于python - 在python中将列表转换为二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25395481/

相关文章:

python - 如何根据 Selenium、Python 和 Xpath 提供的 html 定位元素

python - Python生成两个文件的 "fuzzy"差异,带float的近似比较

javascript - 如何在javascript中组合多个嵌套数组?

python - 生成字符串代码错误的排列

python - 在另一个进程正在写入时清空文件

c - 将字符串分配给某物

c - 动态分配字符串数组

python - 我需要创建一个列表,其中包含一次取三个列表的所有总和,即添加前 3 个元素,然后添加下 3 个

python - 在 Python 中返回多个列表

php - 如何从 CSS 列表样式 :decimal 中删除点 '.'