Convertir une liste dans un tableau 2-D dans python

J'essaie de créer un horaire et des points Secouez la bande de couleur.


matplotlib.pyplot.scatter/x,y, c=time_color/


J'ai une liste time_color, par exemple


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


Malheureusement, l'équipe plot N'accepte pas la liste pour spécifier la couleur. Donc je l'ai transformé en une matrice


numpy.array/time_color/


Cela m'a donné un tableau unidimensionnel.


numpy.ndim/numpy.array/time_color//


Comment puis-je convertir une liste en une matrice à 2 dimensions pour obtenir un horaire 3-D /troisième dimension-couleur/?

Remercier.
Invité:

Gaspard

Confirmation de:

vous pouvez utiliser
numpy.reshape

Pour redimensionner votre tableau
numpy

. Par exemple, vous pouvez faire comme suit:


>>> import numpy
>>> 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/
array/[0, 4, 3, 3, 2, 3, 5, 4, 0, 3, 3, 2, 1, 2, 3, 4, 5, 1, 4, 3, 2]/
>>> numpy.reshape/time_color, /3, 7//
array/[[0, 4, 3, 3, 2, 3, 5],
[4, 0, 3, 3, 2, 1, 2],
[3, 4, 5, 1, 4, 3, 2]]/


ou au cas où votre tableau
time_color

contenir
len/x/

élément que vous pouvez

changement

Votre liste
time_color

de la manière suivante /Où
len/x/=n*m

/:


>>> numpy.reshape/time_color, /m, n//

Christine

Confirmation de:

Graphique réellement de points matplotlib Accepte vraiment une liste pour le panneau de couleur.
Par exemple, ce qui suit est totalement légitime et crée un horaire. 2D Avec la couleur, qui est la 3ème dimension:


matplotlib.pyplot.scatter/ range/0,10/, range/0,10/, c=range/0,10/ /



Si vous avez besoin d'un horaire 3D Avec la quatrième couleur de dimension, vous pouvez utiliser la même idée:


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/ /

Pour répondre aux questions, connectez-vous ou registre