如何用R语言画图我想画一个图,数据大概这样nn=40 ## 蔬菜总共的数量x=rnorm(10) ## 蔬菜的重量y=rnorm(4) ## 蔬菜的价钱z=sample(4,40,replace=TRUE) ## 蔬菜的种类.1:白菜;2:青菜;3:花椰菜;4:空心菜
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/25 21:20:11
如何用R语言画图我想画一个图,数据大概这样nn=40 ## 蔬菜总共的数量x=rnorm(10) ## 蔬菜的重量y=rnorm(4) ## 蔬菜的价钱z=sample(4,40,replace=TRUE) ## 蔬菜的种类.1:白菜;2:青菜;3:花椰菜;4:空心菜
如何用R语言画图
我想画一个图,数据大概这样
nn=40 ## 蔬菜总共的数量
x=rnorm(10) ## 蔬菜的重量
y=rnorm(4) ## 蔬菜的价钱
z=sample(4,40,replace=TRUE) ## 蔬菜的种类.1:白菜;2:青菜;3:花椰菜;4:空心菜
shp=11:14 ## 蔬菜的形状,通过R中的pch=11...14分别标示
clr=c("red","green","yellow","blue") ## 颜色
frt=c("cabbage","green","broccoli","water spinach") ## 名称
怎么弄啊……感觉要被虐死了
如何用R语言画图我想画一个图,数据大概这样nn=40 ## 蔬菜总共的数量x=rnorm(10) ## 蔬菜的重量y=rnorm(4) ## 蔬菜的价钱z=sample(4,40,replace=TRUE) ## 蔬菜的种类.1:白菜;2:青菜;3:花椰菜;4:空心菜
q1,首先要确定是barplot还是hist,如果是barplot的话,应该不存在breaks的问题,因为barplot的传入参数是个矩阵;
我假设你要画的是个hist,我偶遇过这个问题,我的理解是hist的breaks的值要能被范围整除才行;比如x=1:200,break=7的话,就只能画出4个柱来,但如果breaks=10就没问题;基本上是这样的,偶尔也有例外;比如break=5就不行.奇怪得很
最后,没办法的办法,就只能用barplot代替hist了,barplot肯定不会有这个问题,统计下hist参数中的分布情况,转换成矩阵,用barplot吧;
q2,貌似一般都用一组因素把这些类别区分开,我用abcde,表示你的小学,中学...了,比如这样:
a=1:7;b=8:10;c=c(9,10,11);d=c(40,55);e=100:110f=factor(c(rep(1,sum(length(a),length(b),length(c))),rep(2,sum(length(d),length(e)))))#先用c()生成数组,在转换成factor,其实数组也ok的,不过plot()中两个数组和factor不一样 x=c(a,b,c,d,e)plot(x~f)q3,就我所知不行;yes或no一定也要是能映射到x,y范围内的点才行;你是想表示分类结果吗?如果是的话,通常用颜色,或者在点旁边的text表示.
q4,举个例子吧
x=-50:50y=x^2+x+1z=10*abs(x)+1 plot(x,y,type='l')lines(x,z,lty=3)legend(c('type1','type2'),x=-20,y=2500,col=c('black','red'),lty=c(1,3))legend的x和y是legend的左上角,匿名参数是类型名称,col,lty,pch 是对应的颜色,线类型,和点类型.
最后,我现在多用ggplot2,如果不抵触的话可以看看,和R的基础作图包思路不是很一样,但是图很清新的;
如果还有问题,建议把数据集data.frame粘贴几行上来,我也试试;