2015-11-04 29 views
5

Muhtemelen basit bir şey üzerinde sıkışmış durumdayım. Matplotlib'deki varsayılan denizanası renk paletini kullanıyorum. Aynı renge sahip iki çizgi çizmek istiyorum VE bu rengi tanımlamak istiyorum. Varsayılan denizanası paletinin bir parçası olan renkleri kullanmak istiyorum, yani Matplotlib varsayılan kırmızı yerine deniz kırmızısı rengini istiyorum.Matplotlib + Seaborn - aynı renkteki iki çizgi mi?

İşte benim kod snippet'ine:

import pylab as plot 
import seaborn 

t = np.arange(0.0, 2.0, 0.01) 
s = np.sin(2*np.pi*t) 
plt.plot(t, s, 'r') 
plt.plot(t, 2*s, 'r') 

Yukarıdaki kodu kullanırsanız (beklendiği gibi), ben Matplotlib varsayılan kırmızı olsun. Seaborn'un kırmızısını söylemek için "kolay" bir yolu var mı? Renkleri tanımlamazsam renkler deniz bebeğinin varsayılan renk döngüsünden geçecektir. Teşekkürler!

cevap

7

Varsayılan deniz koşullarında renkleri seaborn.color_palette() kullanarak alabilirsiniz (bu işlevden alabileceğiniz birkaç farklı palet vardır). Yani yapabilirsiniz: Varsayılan geçmesi kendinizi paleti ve değer hangi renk, 'kırmızı' I' ne RBG değerlere bağlı gibi hiçbir yararlı isimler vardır karşılık gelen çalışmak zorunda

t = np.arange(0.0, 2.0, 0.01) 
s = np.sin(2*np.pi*t) 
plt.plot(t, s, c=seaborn.color_palette()[2]) 
plt.plot(t, 2*s, c=seaborn.color_palette()[2]) 

gördüm.

+1

Tam olarak aradığım şey bu. Çok teşekkür ederim! –

+0

Daha sonraki bir versiyonda, bunu daha iyi bir şekilde yapabilmek için cevabımı görün. – mwaskom

7

Seaborn 0.6 olarak ya da geç, seaborn.set_color_codes() veya seaborn.set(color_codes=True) çağırabilir ve "r" varsayılan Seaborn kırmızı olarak yorumlanacaktır.

+0

Bu harika bir seçenektir. Paylaşım için teşekkürler! –

İlgili konular