楼主: wyu郑阳
1943 5

[问答] 谁帮我看下这段代码,神没意思,怎么就能做出这个图的?? [推广有奖]

  • 2关注
  • 0粉丝

本科生

9%

还不是VIP/贵宾

-

威望
0
论坛币
340 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
1542 点
帖子
39
精华
0
在线时间
75 小时
注册时间
2013-9-5
最后登录
2018-1-23

楼主
wyu郑阳 发表于 2015-12-8 13:33:18 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
##绘制密度曲线

x <- seq(from = -3,to = 3,by = 1/20)
#标准正态分布密度函数
y <- dnorm(x)

plot(x,y,main = "Standard Normal Distribution",type = "l",
     ylab = "Density",xlab = "Quantile")

abline(h = 0)

region.x <- x[1 <= x & x <= 2]
region.y <- y[1 <= x & x <= 2]

region.x <- c(region.x[1],region.x,tail(region.x,1))
region.y <- c( 0 , region.y , 0)

polygon(region.x,region.y,dendity = 10)

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:没意思

QQ截图20151208133246.png (34.97 KB)

QQ截图20151208133246.png

回帖推荐

jiangbeilu 发表于3楼  查看完整内容

不多说了,见代码,比较出来的结果

ryoeng 发表于2楼  查看完整内容

可以参考一下geom_polygon in ggplot2。
风雨兼程

沙发
ryoeng 在职认证  发表于 2015-12-9 02:27:35

代码自动遗漏,代补

提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽

藤椅
jiangbeilu 学生认证  发表于 2015-12-9 10:27:24
不多说了,见代码,比较出来的结果
  1. ##绘制密度曲线

  2. x <- seq(from = -3,to = 3,by = 1/20)
  3. #标准正态分布密度函数
  4. y <- dnorm(x)
  5. # 作一个标准正态图,type="l"是指作线图
  6. plot(x,y,main = "Standard Normal Distribution",type = "l",
  7.      ylab = "Density",xlab = "Quantile")
  8. # 在plot基础上加一条y=0的水平线,h是代表horizon,是水平的意思
  9. # 如果加垂直线,就是v=...,verticle的意思
  10. abline(h = 0)
  11. # 这里是确定你要选择的区域,首先选择x在1到2之间的
  12. region.x <- x[1 <= x & x <= 2]
  13. # 这是:当x在1到2之间时,y的范围
  14. region.y <- y[1 <= x & x <= 2]
  15. #我加了红线,你可以看出来,是哪一块区域
  16. lines(region.x,region.y,col="red",lwd=2)
  17. # 对比阶段:
  18. polygon(region.x,region.y,density = 10)
  19. # 如果没有这两句,就显示的是,上半部分
  20. # 加入后,实际上,在原来的基础上,加了两个点:
  21. # (region.x[1],0)和(tail(region.x,1),0)多了这两个点
  22. # 其实这两个点在y=0这条线上
  23. region.x1 <- c(region.x[1],region.x,tail(region.x,1))
  24. region.y1 <- c( 0 , region.y , 0)
  25. # 这个,就是从包含了红线,到y=0上的两个点,形成的一个多边形
  26. polygon(region.x1,region.y1,density = 10)
复制代码

板凳
wyu郑阳 发表于 2015-12-9 23:23:19
jiangbeilu 发表于 2015-12-9 10:27
不多说了,见代码,比较出来的结果
太谢谢你们了

报纸
wyu郑阳 发表于 2015-12-9 23:24:43
ryoeng 发表于 2015-12-9 02:27
可以参考一下geom_polygon in ggplot2。
太谢谢你们了!喜欢这个论坛,我也希望能帮别人解决问题,现在技术不行

地板
寒芒先到 发表于 2015-12-10 19:17:47
  1. library(ggplot2)
  2. x <- seq(from = -3,to = 3,by = 1/20)
  3. y <- dnorm(x)
  4. region.x <- c(1,x[1 <= x & x <= 2],2)
  5. region.y <- c(0,y[1 <= x & x <= 2],0)
  6. plot_df<-data.frame(x=x,y=y)
  7. region_df<-data.frame(region.x=region.x,region.y=region.y)
  8. p1<-qplot(x,y,data=plot1_df,geom="line")+geom_hline(y=0)+theme_bw()
  9. p1+geom_polygon(aes(x=region.x,y=region.y),data=region_df)
复制代码
这一题的ggplot做法,但怎样做density那种阴影效果?请论坛大神指教。

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-26 14:45