varias superponer studio lineas graficos grafico graficas dispersion r label point scatter-plot

studio - superponer graficas en r



¿Cómo puedo etiquetar puntos en este diagrama de dispersión? (4)

Debe usar las etiquetas atributo dentro de la función de trazado y el valor de este atributo debe ser el vector que contiene los valores que desea que tenga cada punto.

¿Puedes ayudarme a poner etiquetas en el siguiente gráfico?

El código que uso es:

valbanks<-scan("banks.txt", what=list(0,0,""), sep="", skip=1, comment.char="#") valbanks valj2007<-valbanks[[1]] valj2009<-valbanks[[2]] namebank<-valbanks[[3]] percent_losses<-(valj2009-valj2007)/valj2007 percent_losses abs_losses<-(valj2007-valj2009) abs_losses plot(abs_losses, percent_losses,main="Absolute Losses vs. Relative Losses(in%)",xlab="Losses (absolute, in miles of millions)",ylab="Losses relative (in % of January´2007 value",col="blue", pch = 19, cex = 1, lty = "solid", lwd = 2,text(percet_losses, abs_losses,namebank)) text(percet_losses, abs_losses,labels=namebank, cex= 0.7, offset = 10)

y los datos son:

Value_Jan_2007 Value_Jan_2009 Bank # 49 16 Morgan_Stanley 120 4.6 RBS 76 10.3 Deutsche_Bank 67 17 Credit_Agricole 80 26 Societé_Generale 91 7.4 Barclays 108 32.5 BNP-Paribas 93 26 Unicredit 116 35 UBS 75 27 Credit_Suise 100 35 Goldman_Sachs 116 64 Santander 255 19 Citigroup 165 85 JP_Morgan 215 97 HSBC

Muchas gracias

¿Cuál es la opción de colocar la etiqueta en la parte inferior, derecha, arriba, izquierda, ...?

Resumiendo: quiero una gráfica similar a la que se encuentra en el segundo mensaje de esta publicación, pero no hay el código allí.

¿Qué código tengo que poner?

Si pongo text(percet_losses, abs_losses,namebank) , no text(percet_losses, abs_losses,namebank) nada: la gráfica continúa sin cambios.

¿Podrías mostrarme el código que necesito poner?

Gracias


He intentado el paquete directlabels para poner etiquetas de texto. En el caso de los gráficos de dispersión, todavía no es perfecto, pero es mucho mejor que ajustar manualmente las posiciones, especialmente en los casos en los que está preparando los gráficos de borrador y no el final, por lo que debe cambiar y realizar el gráfico una y otra vez.


Para solo trazar un vector, debes usar el siguiente comando:

text(your.vector, labels=your.labels, cex= labels.size, pos=labels.position)


Su llamada a text() no genera nada porque invirtió su x y su y:

plot(abs_losses, percent_losses, main= "Absolute Losses vs. Relative Losses(in%)", xlab= "Losses (absolute, in miles of millions)", ylab= "Losses relative (in % of January´2007 value)", col= "blue", pch = 19, cex = 1, lty = "solid", lwd = 2) text(abs_losses, percent_losses, labels=namebank, cex= 0.7)

Ahora, si desea mover sus etiquetas hacia abajo, hacia la izquierda, hacia arriba o hacia la derecha, puede agregar el argumento pos= con valores, respectivamente, 1, 2, 3 o 4. Por ejemplo, para colocar sus etiquetas hacia arriba:

text(abs_losses, percent_losses, labels=namebank, cex= 0.7, pos=3)

Por supuesto, puede dar un vector de valor para pos si quiere algunas de las etiquetas en otras direcciones (por ejemplo, para Goldman_Sachs, UBS y Société_Generale, ya que se superponen con otras etiquetas):

pos_vector <- rep(3, length(namebank)) pos_vector[namebank %in% c("Goldman_Sachs", "Societé_Generale", "UBS")] <- 4 text(abs_losses, percent_losses, labels=namebank, cex= 0.7, pos=pos_vector)