Thông thường, không cần lấy chu kỳ màu mặc định từ bất kỳ đâu, vì nó là chu trình mặc định, vì vậy chỉ cần sử dụng nó là đủ.
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111)
t = np.arange(5)
for i in range(4):
line, = ax.plot(t,i*(t+1), linestyle = '-')
ax.plot(t,i*(t+1)+.3,color = line.get_color(), linestyle = ':')
plt.show()
Trong trường hợp bạn muốn sử dụng chu kỳ màu mặc định cho một thứ gì đó khác, tất nhiên có một số tùy chọn.
bản đồ màu "tab10"
Đầu tiên cần lưu ý rằng "tab10"
bản đồ màu bao gồm các màu từ chu kỳ màu mặc định, bạn có thể lấy nó qua cmap = plt.get_cmap("tab10")
.
Tương đương với những điều trên do đó sẽ là
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111)
t = np.arange(5)
cmap = plt.get_cmap("tab10")
for i in range(4):
ax.plot(t,i*(t+1), color=cmap(i), linestyle = '-')
ax.plot(t,i*(t+1)+.3,color=cmap(i), linestyle = ':')
plt.show()
Màu sắc từ chu kỳ màu
Bạn cũng có thể sử dụng bộ tuần hoàn màu trực tiếp , cycle = plt.rcParams['axes.prop_cycle'].by_key()['color']
. Điều này cung cấp danh sách với các màu từ chu kỳ, bạn có thể sử dụng để lặp lại.
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111)
t = np.arange(5)
cycle = plt.rcParams['axes.prop_cycle'].by_key()['color']
for i in range(4):
ax.plot(t,i*(t+1), color=cycle[i], linestyle = '-')
ax.plot(t,i*(t+1)+.3,color=cycle[i], linestyle = ':')
plt.show()
các CN
ký hiệu
Cuối cùng, CN
ký hiệu cho phép lấy N
màu thứ của chu kỳ màu , color="C{}".format(i)
. Tuy nhiên, điều này chỉ hoạt động với 10 màu đầu tiên ( N in [0,1,...9]
)
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111)
t = np.arange(5)
for i in range(4):
ax.plot(t,i*(t+1), color="C{}".format(i), linestyle = '-')
ax.plot(t,i*(t+1)+.3,color="C{}".format(i), linestyle = ':')
plt.show()
Tất cả các mã được trình bày ở đây tạo ra cùng một âm mưu.
lines_colour_cycle = [p['color'] for p in plt.rcParams['axes.prop_cycle']]