问题

来自:http://zhidao.baidu.com/question/680266505858712212.html?quesup2&oldq=1&sort=6&qq-pf-to=pcqq.c2c

在看别人的论文的时候出现的这种图不知道是怎么画的,已知的部分数据还有要画的散点图在下面的截图中,跪求高手指点一下!

java XSSFWorkbook类散点图 java画散点图_旋转角度

java XSSFWorkbook类散点图 java画散点图_旋转角度_02


解答

用R画了一下,大致差不多。

java XSSFWorkbook类散点图 java画散点图_旋转角度_03

代码如下:

#创建数据框

TestData <- data.frame(
  zone= c("浙江","山东","黑龙江","青海","江苏","湖北","河北"),
  x1= c(8.6,8.5,8.5,8.3,8.0,7.8,7.4),
  x2 = c(13.49,11.68,10.78,11.34,11.74,10.43,10.59)
  )

#作图

plot(data=TestData, 
     x=TestData$x1, 
     y=TestData$x2, 
     type="p",  #散点图               
     bty="l",   #坐标轴形状:L型
     pch=19,    #散点符号:实心远点
     xlab="公共收入负担",
     ylab="公共产品提供水平",
     xlim=c(6,20),
     ylim=c(8,16),
     # main="图1  各地公共收入负担与公共服务水平",
     axes=TRUE,  #画坐标轴
     xaxt="n",   #不画X轴的刻度
     yaxt="n")   #不画y州的刻度

#添加两条直线

abline(h=c(11.43), v=c(10.3))

#添加文本信息

text(TestData$x1, TestData$x2-0.2, TestData$zone, cex=0.7)  #为每个点添加省份名称
                                                            #cex:字体放大倍数

text(19.3, 11.23, "全国平均公共服务指数", cex=0.7)

text(10.1, 15, "全国平均公共服务指数",srt=90, cex=0.7)  #srt指定文本的旋转角度(顺时针)

text(14,14.1,"区域一",font=2)  #font指定用粗体
text(6.7,14.1,"区域二",font=2)
text(6.7,9.3,"区域三",font=2)

#添加指定的X轴和Y轴刻度标签

axis(1,at=c(7,10.3,13.6,16.9,19.8),labels=c("7","10.3","13.6","16.9","19.8"))
axis(2,at=c(8.8,11.43,14.06),labels=c("8.8","11.43","14.06"))

#指定主、次标题。主标题在上方,黑体;此标题在图像下方,非粗体

title(main="图1  各地公共收入负担与公共服务水平",
      sub="图1  各地公共收入负担与公共服务水平",font=2)



#xaxp:指定x轴的刻度范围,一般是一个seq,把刻度轴划分为n个部分。这个参数在xaxt=‘n’时可用


-----------------------2013/11/20------------------------------------

java XSSFWorkbook类散点图 java画散点图_顺时针_04

今天又画了一封,代码先保存着吧。

#创建数据框

TestData <- read.csv("c:/data.csv",header=TRUE)

#作图

plot(data=TestData, 
     x=TestData$x1, 
     y=TestData$x2, 
     type="p",  #散点图               
     bty="l",   #坐标轴形状:L型
     pch=19,    #散点符号:实心远点
     xlab="公共收入负担",
     ylab="公共物品和公共服务水平",
     xlim=c(6,20),
     ylim=c(7,14),
     # main="图1  各地公共收入负担与公共服务水平",
     axes=TRUE,  #画坐标轴
     xaxt="n",   #不画X轴的刻度
     yaxt="n")   #不画y州的刻度

#添加两条直线

abline(h=c(9.37), v=c(10.46))

#添加文本信息

text(TestData$x1, TestData$x2-0.2, TestData$zone, cex=0.7)  #为每个点添加省份名称
#cex:字体放大倍数

text(18, 9.15, "全国平均公共物品和公共服务水平", cex=0.7)

text(10.24, 13, "全国平均公共收入负担",srt=90, cex=0.7)  #srt指定文本的旋转角度(顺时针)

text(14,13.1,"区域一",font=2)  #font指定用粗体
text(7,13.1,"区域二",font=2)
text(7,9,"区域三",font=2)
text(14,9,"区域四",font=2)

#添加指定的X轴和Y轴刻度标签

axis(1,at=c(7,10.46,13.6,16.9,19.8),labels=c("7","10.46","13.6","16.9","19.8"))
axis(2,at=c(8,9.37,11.43,13.76),labels=c("8","9.37","11.43","13.76"))

#指定主、次标题。主标题在上方,黑体;此标题在图像下方,非粗体

title(main="图1  各地公共收入负担与公共服务水平",
      sub="图1  各地公共收入负担与公共服务水平",font=2)