2012-04-09 11 views
6

Necesito crear una leyenda compleja, que incluye una fracción y el numerador y el denominador están en diferentes colores Legend.Fracción en la leyenda, colores múltiples

¿Es posible crear dicha leyenda con (base) R?

Como tengo que agregar esta leyenda en varias parcelas diferentes, no quiero programar el texto manualmente, pero puedo agregarlo automáticamente como la leyenda. No es necesario que sea una leyenda (aunque sería conveniente), sin embargo, no quiero tener que ingresar manualmente las coordenadas de cada elemento.

¿Alguna idea ?!

+1

I don' Tengo tiempo para trabajar un ejemplo, pero lo mejor que puedo pensar es utilizar la función 'subplot' de ** TeachingDemos ** para agregar la" leyenda ". De esta forma, puede trazar el texto directamente usando 'text' con ubicaciones codificadas. – joran

+0

O ni siquiera está codificado, en el sentido de que cada gráfico podría colocar el texto en, por ejemplo, '0.9 * max (x), 0.75 * max (y)'. –

Respuesta

8

Asumiendo que usted tiene algo así como:

d=1:10 
plot(d,type="l") 

y usted no necesitaría diferentes colores para numerador y el denominador, se puede hacer esto con una sola línea (incluyendo la localización texto de sugerencia por @CarlWitthoft):

text(0.5*max(d), 0.9*max(d), expression(Result == frac(Green, Blue)), cex=1.5) 

enter image description here

pero no hay una forma sencilla de cambiar el color del numerador y el denominador. Así que la forma torpe es personalizar cada elemento por separado:

text(0.4*max(d), 0.9*max(d), "Result =", cex=1.5) 
text(0.55*max(d), 0.93*max(d), "Green", col="green", cex=1.5) 
text(0.55*max(d), 0.87*max(d), "Blue", col="blue", cex=1.5) 
segments(0.5*max(d), 0.9*max(d), 0.6*max(d), 0.9*max(d)) 

enter image description here

que sé que no es lo que realmente quiere, pero por si acaso hay mejor truco viene ...

Cuestiones relacionadas