The following code, take from thetechrepo tutorial, will plot some data with different colors.
import matplotlib.pyplot as plt
plt.figure()
#create data
x_series = [0,1,2,3,4,5]
y_series_1 = [x**2 for x in x_series]
y_series_2 = [x**3 for x in x_series]
plt.plot(x_series, y_series_1, 'r-')
plt.plot(x_series, y_series_2, 'c--')
plt.show()
However what if I wanted to change the colors after I've called plot? For example how would I change the color of series_1
to green after I had called plt.plot(x_series, y_series_1, 'r-')
?
The usual way to set the line color in matplotlib is to specify it in the plot command. This can either be done by a string after the data, e.g. "r-" for a red line, or by explicitely stating the color argument.
All of the line properties can be controlled by keyword arguments. For example, you can set the color, marker, linestyle, and markercolor with: plot(x, y, color='green', linestyle='dashed', marker='o', markerfacecolor='blue', markersize=12).
you can use set_color
on the Line2D
object created by plt.plot
. For example:
l1, = plt.plot(x_series, y_series_1, 'r-')
l2, = plt.plot(x_series, y_series_2, 'c--')
# Some time later...
l1.set_color('b')
l2.set_color('g')
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With