找回密码
 注册
查看: 3263|回复: 0

stripchart图的一些初步学习整理

[复制链接]
发表于 2016-2-23 11:32:28 | 显示全部楼层 |阅读模式
本帖最后由 XiaoQ 于 2016-2-26 09:49 编辑

数据样式
tu1.png

# 读取数据
ana_data_all=read.csv("C:\\Users\\Administrator\\Desktop\\测试数据.csv",header= T)
# 根据均值建立有序列,这个是为了作图好看下面
mean_data=sort(tapply(ana_data_all$show,ana_data_all$one, mean),decreasing=T)
name_data_one=names(mean_data)
ana_data_all$one1=ordered(ana_data_all$one,levels=name_data_one)#建立有序因素序列
num_data_one=length(name_data_one)

# 开始作图测试1
stripchart(show~one,data=ana_data_all[ana_data_all$kind=="peo",],vertical=T,col="Blue",main="test")
# 添加第二种方法的点
points(show~one,data=ana_data_all[ana_data_all$kind=="free",],col="red")
tu2.png
#可以发现横坐标显示不完全,而且图形看上去并没什么可看的东西。
#下面将尝试将值较高的one放在最左面,这样排序。这时就要用到上面得到的one1
# 开始作图
stripchart(show~one1,data=ana_data_all[ana_data_all$kind=="peo",],vertical=T,col="Blue",xaxt="n",main="test")

# 添加第二种方法的点
points(show~one1,data=ana_data_all[ana_data_all$kind=="free",],col="red")

#第二种添加点的方法,加入add的参数即可
stripchart(show~one1,data=ana_data_all[ana_data_all$kind=="free",],vertical=T,col="red",xaxt="n",main="test",add=T)

#以上两种做法都是在原图添加,如果添加的点超出了原图的范围,点就不会在图里面,那么就是对原图的范围进行设定
stripchart(show~one1,data=ana_data_all[ana_data_all$kind=="peo",],vertical=T,col="Blue",xaxt="n",main="test",ylim=c(min(ana_data_all$show),max(ana_data_all$show)))

tu3.png

#添加横坐标刻度名称,将名称分为两行,名称间隔输入
axis(1,at=seq(1,num_data_one,2),labels =name_data_one[seq(1,num_data_one,2)],padj = 2)
axis(1,at=seq(2,num_data_one,2),labels =name_data_one[seq(2,num_data_one,2)])
tu4.png

#添加图例
legend(19,350000,paste("peo"),pch=0,col="Blue",bty="n",text.col="black")
legend(19,330000,paste("free"),pch=1,col="red",bty="n",text.col="black")
tu5.png
#有什么更好的方法欢迎交流。本人第一次用stripchart()作图。




测试数据.rar

1.76 KB, 下载次数: 0

售价: 3 金钱  [记录]  [购买]

本文所用数据

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|小黑屋|生物统计家园 网站价格

GMT+8, 2024-11-21 18:54 , Processed in 0.064645 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表