Histogramme Dictionnaire
Fermé
Sun
-
10 mars 2021 à 14:26
yg_be Messages postés 23473 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 février 2025 - 10 mars 2021 à 23:15
yg_be Messages postés 23473 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 février 2025 - 10 mars 2021 à 23:15
A voir également:
- Histogramme Dictionnaire
- Télécharger dictionnaire larousse pdf gratuit - Télécharger - Dictionnaires & Langues
- Attaque par dictionnaire - Guide
- Télécharger dictionnaire médical larousse gratuit pdf - Télécharger - Dictionnaires & Langues
- Télécharger dictionnaire français gratuit pdf - Télécharger - Bureautique
- Télécharger dictionnaire informatique gratuit pdf - Télécharger - Bureautique
2 réponses
yg_be
Messages postés
23473
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
18 février 2025
Ambassadeur
1 568
10 mars 2021 à 18:31
10 mars 2021 à 18:31
bonjour,
es-tu certain d'avoir partagé tout ton programme?
merci d'utiliser les balises: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
es-tu certain d'avoir partagé tout ton programme?
merci d'utiliser les balises: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
classif = 'chemin d'accès'
ds = gdal.Open(classif)
cols = ds.RasterXSize
rows = ds.RasterYSize
band= ds.RasterCount
db = ds.GetRasterBand(1)
bandtype = gdal.GetDataTypeName(db.DataType)
classif = db.ReadAsArray(0, 0, cols, rows).astype(np.int)
Ts_jour= 'chemin d'accès'
ds2 = gdal.Open(Ts_jour)
cols2 = ds2.RasterXSize
rows2 = ds2.RasterYSize
band2= ds2.RasterCount
db2 = ds2.GetRasterBand(1)
bandtype2 = gdal.GetDataTypeName(db2.DataType)
Ts_jour = db2.ReadAsArray(0, 0, cols2, rows2).astype(np.int)
##Attribuer indices de classif à Ts
vecteur_Ts_classe={}
for x in range(1,14):
[cols,rows] = np.where(classif==x) #chercher dans la matrice de classif par exemple classe 1 et l'implémenter dans un vecteur
vecteur_Ts_classe[x] = Ts_jour[cols,rows] #on assigne le vecteur à une matrice où il y a les températures
- Le dictionnaire est sous cette forme : {1: array([300, 300, 300, ..., 299, 299, 299]), 2: array([310, 306, 310, ..., 314, 311, 311]), 3: array([303, 303, 303, ..., 307, 307, 310]), 4: array([307, 307, 308, ..., 311, 310, 308]), 5: array([323, 323, 323, ..., 328, 330, 331]), 6: array([313, 311, 309, ..., 318, 322, 318]), 7: array([320, 316, 315, ..., 323, 324, 323]), 8: array([312, 312, 312, ..., 320, 313, 315]), 9: array([314, 314, 316, ..., 330, 330, 331]), 10: array([313, 313, 316, ..., 313, 314, 314]), 11: array([316, 316, 311, ..., 322, 320, 319]), 12: array([311, 309, 319, ..., 320, 324, 321]), 13: array([302, 302, 303, ..., 304, 303, 303])}
#Histogramme
plt.bar(list(vecteur_Ts_classe()), vecteur_Ts_classe.values(), align ='center')
plt.xticks(list(vecteur_Ts_classe()), vecteur_Ts_classe.keys())
plt.margins(0.05,0)
plt.show()
- Mon message d'erreur : ValueError: setting an array element with a sequence.
- Je souhaite réaliser un histogramme des valeurs (300,300 etc..) en fonction de leur classe 1,2,3,4 etc... Est-ce envisageable ?
- Mes classes ne sont pas de même longueur cad que pour la classe 1 j'ai 5000 valeurs par exemple et la classe 2 j'en ai 3000 valeurs
ds = gdal.Open(classif)
cols = ds.RasterXSize
rows = ds.RasterYSize
band= ds.RasterCount
db = ds.GetRasterBand(1)
bandtype = gdal.GetDataTypeName(db.DataType)
classif = db.ReadAsArray(0, 0, cols, rows).astype(np.int)
Ts_jour= 'chemin d'accès'
ds2 = gdal.Open(Ts_jour)
cols2 = ds2.RasterXSize
rows2 = ds2.RasterYSize
band2= ds2.RasterCount
db2 = ds2.GetRasterBand(1)
bandtype2 = gdal.GetDataTypeName(db2.DataType)
Ts_jour = db2.ReadAsArray(0, 0, cols2, rows2).astype(np.int)
##Attribuer indices de classif à Ts
vecteur_Ts_classe={}
for x in range(1,14):
[cols,rows] = np.where(classif==x) #chercher dans la matrice de classif par exemple classe 1 et l'implémenter dans un vecteur
vecteur_Ts_classe[x] = Ts_jour[cols,rows] #on assigne le vecteur à une matrice où il y a les températures
- Le dictionnaire est sous cette forme : {1: array([300, 300, 300, ..., 299, 299, 299]), 2: array([310, 306, 310, ..., 314, 311, 311]), 3: array([303, 303, 303, ..., 307, 307, 310]), 4: array([307, 307, 308, ..., 311, 310, 308]), 5: array([323, 323, 323, ..., 328, 330, 331]), 6: array([313, 311, 309, ..., 318, 322, 318]), 7: array([320, 316, 315, ..., 323, 324, 323]), 8: array([312, 312, 312, ..., 320, 313, 315]), 9: array([314, 314, 316, ..., 330, 330, 331]), 10: array([313, 313, 316, ..., 313, 314, 314]), 11: array([316, 316, 311, ..., 322, 320, 319]), 12: array([311, 309, 319, ..., 320, 324, 321]), 13: array([302, 302, 303, ..., 304, 303, 303])}
#Histogramme
plt.bar(list(vecteur_Ts_classe()), vecteur_Ts_classe.values(), align ='center')
plt.xticks(list(vecteur_Ts_classe()), vecteur_Ts_classe.keys())
plt.margins(0.05,0)
plt.show()
- Mon message d'erreur : ValueError: setting an array element with a sequence.
- Je souhaite réaliser un histogramme des valeurs (300,300 etc..) en fonction de leur classe 1,2,3,4 etc... Est-ce envisageable ?
- Mes classes ne sont pas de même longueur cad que pour la classe 1 j'ai 5000 valeurs par exemple et la classe 2 j'en ai 3000 valeurs
yg_be
Messages postés
23473
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
18 février 2025
1 568
10 mars 2021 à 23:15
10 mars 2021 à 23:15
merci d'utiliser les balises: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
et, ensuite, de préciser à quelle ligne tu obtiens le message d'erreur
et, ensuite, de préciser à quelle ligne tu obtiens le message d'erreur