繁体   English   中英

如何在此散点图中标记点?

[英]How can I label points in this scatterplot?

你能帮我把标签贴在下图上吗?

http://img849.imageshack.us/img849/7594/snap1034.png

我使用的代码是:

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)

而数据是:

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

非常感谢你

将标签放在底部,右侧,上方,左侧,......的选项是什么?

总结:我想要一个类似于这篇文章的第二条消息中的图表,但那里没有代码。

我要放什么代码?


如果我把text(percet_losses, abs_losses,namebank) ,我什么也得不到:图表继续没有变化。

你能告诉我我需要的代码吗?

谢谢

你对text()调用没有输出任何东西,因为你颠倒了你的x和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)

现在,如果要向下,向左,向上或向右移动标签,可以分别添加参数pos= with values,1,2,3或4.例如,要放置标签:

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

在此输入图像描述

如果你想要其他方向的一些标签,你当然可以给pos一个值向量(例如Goldman_Sachs,UBS和Société_Generale,因为它们与其他标签重叠):

 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)

在此输入图像描述

要绘制矢量,您应该使用以下命令:

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

我尝试过directlabels标签包来放置文本标签。 在散点图的情况下,它仍然不是完美的,但比手动调整位置要好得多,特别是在你准备草稿而不是最后一个的情况下 - 所以你需要一次又一次地改变和制作情节 - 。

您应该在plot函数中使用labels属性,并且此属性的值应该是包含每个点所需的值的向量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM