4386 11

[问答] R中画图 [推广有奖]

  • 8关注
  • 2粉丝

讲师

33%

还不是VIP/贵宾

-

威望
0
论坛币
310 个
通用积分
0
学术水平
1 点
热心指数
1 点
信用等级
0 点
经验
15111 点
帖子
218
精华
0
在线时间
379 小时
注册时间
2012-10-31
最后登录
2020-8-31

楼主
慧(会)幸福 发表于 2013-6-3 20:08:52 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
图片1.jpg 如上图,我是用下面程序画出来的

h=function(b){
w=(1+b^2)/(1+(b-1)^2)
2*log(w)
}
x=seq(from=-5,to=5,by=0.01)
y=h(x)
plot(x,y,type='l')

我想要在上图中的点(-0.25,-1.76)向左画一条水平虚线, 在点(1.25,1.76) 处向右画一条水平虚线,在点(-0.25,0)向上垂直画一条虚线,在点(1.25,0)向上垂直画一条虚线,怎么画呢  多谢各位了啊!



二维码

扫码加我 拉你入群

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

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

关键词:function From plot type Rom 画图

沙发
szxship 发表于 2013-6-3 20:25:29
h=function(b){
w=(1+b^2)/(1+(b-1)^2)
2*log(w)
}
x=seq(from=-5,to=5,by=0.01)
y=h(x)
plot(x,y,type='l')
abline(h = -1.76,lty = 2)
abline(h = 1.76,lty = 2)
abline(v = -0.25,lty = 2)
abline(v = 1.25,lty = 2)

藤椅
wanlin000 发表于 2013-6-3 20:28:56
靠自己

板凳
慧(会)幸福 发表于 2013-6-3 20:30:15
szxship 发表于 2013-6-3 20:25
h=function(b){
w=(1+b^2)/(1+(b-1)^2)
2*log(w)
谢谢了  不过我想要的是不显示x>-0.25时,y=-1.76对应的 水平线,不显示x<1.25,y=1.76对应的水平线,怎么画呢,多谢了

报纸
求证1加1 发表于 2013-6-3 20:47:13
用abline或者line只能画出直线,没法直接满足lz的要求,最简便的办法可以通过绘制箭头的低级绘图函数,但需要将尖短线的长度设为0,最后附上代码,lz可以一试:
  1. h=function(b){
  2. w=(1+b^2)/(1+(b-1)^2)
  3. 2*log(w)
  4. }
  5. x=seq(from=-5,to=5,by=0.01)
  6. y=h(x)
  7. plot(x,y,type='l')
  8. arrows(-0.25,-1.76, -5, -1.76, length = 0);
  9. arrows(1.25,1.76, 4, 1.76, length = 0);
  10. arrows(-0.25, 0 , -0.25, 2, length = 0);
  11. arrows(1.25, 0, 1.25, 2, length = 0);
复制代码
希望对lz有用
个人主页,欢迎订阅http://chenangliu.info/

地板
szxship 发表于 2013-6-3 22:07:03
szxship 发表于 2013-6-3 20:25
h=function(b){
w=(1+b^2)/(1+(b-1)^2)
2*log(w)
h=function(b){
w=(1+b^2)/(1+(b-1)^2)
2*log(w)
}
x=seq(from=-5,to=5,by=0.01)
y=h(x)
plot(x,y,type='l')
rect(-0.25,1.76,1.25,-1.76,lty = 2)

7
qoiqpwqr 发表于 2013-6-3 23:49:39
  1. lines(x=c(-0.25, -5), y = rep(-1.76, 2), lty = 2)
  2. lines(x=c(1.25, 5), y = rep(1.76, 2), lty = 2)
复制代码

8
bobguy 发表于 2013-6-4 07:40:55
You can additional lines as below,

h=function(b){
  w=(1+b^2)/(1+(b-1)^2)
  2*log(w)
}
x=seq(from=-5,to=5,by=0.01)
y=h(x)
plot(x,y,type='l')

#add line here
x<- seq(from=0.25,to=1.76,by=0.1)
y<- rep(0, length(x))
points(x,y , type="l",lty=2, lwd=1, col="blue")

9
慧(会)幸福 发表于 2013-6-4 11:22:28
szxship 发表于 2013-6-3 20:25
h=function(b){
w=(1+b^2)/(1+(b-1)^2)
2*log(w)
在此基础上,我想在 横轴的-0.25处标记a,在横轴的1.25处标记b,怎么办呢  多谢您了

10
szxship 发表于 2013-6-4 19:28:24
慧(会)幸福 发表于 2013-6-4 11:22
在此基础上,我想在 横轴的-0.25处标记a,在横轴的1.25处标记b,怎么办呢  多谢您了
h=function(b){
w=(1+b^2)/(1+(b-1)^2)
2*log(w)
}
x=seq(from=-5,to=5,by=0.01)
y=h(x)
plot(x,y,type='l')
rect(-0.25,1.76,1.25,-1.76,lty = 2)
axis(side = 1,at = c(-0.25,1.25))
text(-0.25,-2,labels = "a")
text(1.20,-2,labels = "b")

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-2 03:42