Question

How can I give the labels "a", "b", "c" individual colors (e.g. "a" in green, "b" in blue, "c" in red) in the example below?

import numpy as np
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
p = plt.boxplot(np.random.normal(size=(10,3)))
ax.set_xticklabels(list("abc"))
plt.show()

Example of boxplot without individually colored labels.

Was it helpful?

Solution

The code:

import numpy as np
import matplotlib.pyplot as plt
    fig, ax = plt.subplots()
    p = plt.boxplot(np.random.normal(size=(10,3)))
    ax.set_xticklabels(list("abc"))

[t.set_color(i) for (i,t) in
 zip(['red','green','blue'],ax.xaxis.get_ticklabels())]

plt.show()

Gives me:

enter image description here

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top