Disons que nous avons un paramètre discret, en fonction duquel nous voulons faire une coloration sur le graphique en utilisant Plots.jl avec le backend GR. Le type du paramètre (dans l'exemple ci-dessous, il s'agit de Int64) indique clairement qu'il est discret, mais si nous n'effectuons aucune action supplémentaire, une échelle de couleur continue lui sera appliquée dans la barre de couleur. Si nous spécifions explicitement le nombre de gradations de couleurs correspondant au nombre de classes discrètes, ou du moins si nous définissons explicitement la palette, alors dans ce cas, les gradations de couleurs intermédiaires disparaîtront, mais l'échelle restera essentiellement continue. Quelle est la bonne façon de créer une barre de couleur pour des données discrètes, où chaque classe correspond à une couleur distincte et à la valeur de cette classe ?
x = (1:1:7); y = (1:1:7); z = [0, 1, 2, 2, 1, 0, 0]
plot(x, y, zcolor = z, seriestype = :scatter,
markersize=5, label = "points")
résultat :
x = (1:1:7); y = (1:1:7); z = [0, 1, 2, 2, 1, 0, 0]
plot(x, y, zcolor = z, seriestype = :scatter,
markersize=5, label = "points", color=palette(:heat, 3))
ou
x = (1:1:7); y = (1:1:7); z = [0, 1, 2, 2, 1, 0, 0]
plot(x, y, zcolor = z, seriestype = :scatter,
markersize=5, label = "points", color=palette(:heat))
résultat :