我想在python中創建一個圖形,並使得相同的annonate文本將具有兩種顏色,annonate的一半將是藍色,另一半將是紅色。matplotlib兩種不同的顏色在相同的註釋
我認爲代碼可以解釋它自己。我有3行1綠色與綠色annonate,1藍色與藍色annone。
第三個是紅色的情節1和情節2的總和,我希望它有一半藍色和一半綠色。
IPython中-pylab
x=arange(0,4,0.1)
exp1 = e**(-x/5)
exp2 = e**(-x/1)
exp3 = e**(-x/5) +e**(-x/1)
figure()
plot(x,exp1)
plot(x,exp2)
plot(x,exp1+exp2)
title('Exponential Decay')
annotate(r'$e^{-x/5}$', xy=(x[10], exp1[10]), xytext=(-20,-35),
textcoords='offset points', ha='center', va='bottom',color='blue',
bbox=dict(boxstyle='round,pad=0.2', fc='yellow', alpha=0.3),
arrowprops=dict(arrowstyle='->', connectionstyle='arc3,rad=0.95',
color='b'))
annotate(r'$e^{-x/1}$', xy=(x[10], exp2[10]), xytext=(-5,20),
textcoords='offset points', ha='center', va='bottom',color='green',
bbox=dict(boxstyle='round,pad=0.2', fc='yellow', alpha=0.3),
arrowprops=dict(arrowstyle='->', connectionstyle='arc3,rad=-0.5',
color='g'))
annotate(r'$e^{-x/5} + e^{-x/1}$', xy=(x[10], exp2[10]+exp1[10]), xytext=(40,20),
textcoords='offset points', ha='center', va='bottom',
bbox=dict(boxstyle='round,pad=0.2', fc='yellow', alpha=0.3),
arrowprops=dict(arrowstyle='->', connectionstyle='arc3,rad=-0.5',
color='red'))
這可能嗎?
@bli你看看[這個問題](https://stackoverflow.com/questions/9169052/partial-coloring-of-text-in-matplotlib)? – ImportanceOfBeingErnest
謝謝。這個答案確實非常相關:https://stackoverflow.com/a/42768093/1878788 – bli