Bonjour,

je trace un graphique prenant en compte trois variables : 'tabTime' en abscisse, 'TabAlt' en ordonnée et 'tabDiff' pour colorbar :

Nom : Seasonal variability Difference interpolate.png
Affichages : 244
Taille : 108,8 Ko

Pour ce graphique j'utilise un scatterplot :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
 
import matplotlib.pyplot as plt
import numpy as np
import glob
from datetime import datetime
from numpy import arange
import matplotlib.dates as mdates
 
tabTime = np.zeros(0)
tabAlt = np.zeros(0)
tabDiff= np.zeros(0)
tabfile=np.zeros(0)
 
 
 
ext="Diff_*"
for files in sorted(glob.glob(ext),reverse=False):
    print(files) 
    filename=(files[5:9])
    print(filename)
 
 
 
    data = np.loadtxt(files)
    alt = data[:,0]  
    diff = data[:,1]
    NumberOfLine = len(alt)
    tabAlt = np.append(tabAlt,alt)
    tabDiff = np.append(tabDiff, diff)
 
 
    a = filename
    tabfile = np.append(tabfile,a)
 
    for i in range(len(alt)):
        tabTime = np.append(tabTime,a)
 
 
 
plt.scatter(tabTime, tabAlt, marker='.', c=tabDiff, cmap='RdBu') 
plt.xticks(rotation=45)
 
plt.xticks([tabfile[0],tabfile[14], tabfile[30], tabfile[46],tabfile[60]],[' July 01',' July 15 ','Aug 01','Aug 15','Aug 31'])
 
plt.xlabel('Date')
plt.ylabel('Altitude (km)')
cbar = plt.colorbar()
cbar.set_label('O3`non AMA` - O3`AMA`  (ppmv)')
plt.show()
Mais comme vous pouvez le voir, scatter me place des gros points sur mes données, assez gros pour rendre difficile la lecture du graphique de manière précise.
C'est pourquoi j'essaye de tracer des pixels au lieu de gros points.

Sauriez-vous comment faire pour ça ?
J'ai essayé de voir avec imshow mais je ne vois pas comment adapter mon code à la syntaxe de imshow.