簡體   English   中英

從matplotlib顏色欄中選擇繪圖顏色?

[英]Picking plot colors from matplotlib colorbar?

我有一個循環,它在每次迭代時都將數據繪制到同一圖上。 我試圖弄清楚如何設置它,以便根據迭代次數從顏色欄中繪制每個數據集的顏色,也就是說,循環的每次迭代都繪制一條深藍色陰影線(例如)比它之前的行。

我的代碼如下所示:

for k in numpy.arange(0, iterations, 500):
    h,binEdges=numpy.histogram(data1[k])
    bincenters = 0.5*(binEdges[1:]+binEdges[:-1])
    plt.plot(bincenters,h,label=(str(k)))
plt.title(title)
plt.legend(fontsize=6)
plt.show()

(data1是字典。)有人知道怎么做嗎?

可以通過調用顏色圖來獲取顏色圖的值。 色彩圖的范圍是0到1。例如,如果cmap = plt.get_cmap("Blues") ,則cmap = plt.get_cmap("Blues")的中間位置將作為cmap(0.5) 因此,您可以使用歸一化的循環索引調用顏色圖以從中獲取顏色。

import numpy as np
import matplotlib.pyplot as plt

data = [np.random.rand(13+10*i) for i in range(10)]
data1 = dict(zip(range(10),data))

cmap=plt.get_cmap("Blues")
kn = np.arange(10)
for k in kn:
    h,binEdges=np.histogram(data1[k])
    bincenters = 0.5*(binEdges[1:]+binEdges[:-1])
    plt.plot(bincenters,h,label=(str(k)), color=cmap(float(k)/kn.max()))

plt.legend(fontsize=6)
plt.show()

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM