楼主: huhuhuhu
7115 3

[问答] 关于“ggplot2频率多边图纵坐标刻度问题”的请教 [推广有奖]

  • 32关注
  • 2粉丝

已卖:1881份资源

学术权威

93%

还不是VIP/贵宾

-

威望
0
论坛币
22246 个
通用积分
169.0853
学术水平
14 点
热心指数
25 点
信用等级
11 点
经验
1073 点
帖子
5318
精华
0
在线时间
2691 小时
注册时间
2006-9-13
最后登录
2025-12-21

楼主
huhuhuhu 发表于 2013-8-31 11:12:49 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
各位高手:本人正在阅读《ggplot2:数据分析与图形艺术》中文版一书,书中“5.4节 展示数据分布”(P72)以ggplot2包自带的数据集diamonds中的depth变量为例说明如何绘制频率多边图(frequency polygon),其代码如下:

> depth_dist <- ggplot(diamonds, aes(depth)) + xlim(58, 68)
> depth_dist + geom_freqpoly(aes(y = ..density.., colour = cut), binwidth = 0.1)

绘图结果如下:
                      depth变量

试着举一反三,以diamonds数据集中的carat变量替代depth, 且相应修改取值范围为xlim(0, 3),其余不变。则修改后的代码如下:
> carat_dist <- ggplot(diamonds, aes(carat)) + xlim(0, 3)   
> carata_dist + geom_freqpoly(aes(y = ..density.., colour = cut),  binwidth = 0.1)

绘图结果如下:
                      carat变量
比较两张图会发现:depth变量那张频率多边图的纵坐标刻度是[0, 1],表示频率,这个没啥问题;但carat变量的频率多边图的纵坐标刻度却不在[0, 1]范围内,而是显示为刻度从0到2以上,这似乎不是表示频率的刻度。数次验证甚至重启R也是如此。

请教高手,为什么会出现这种现象,如何解决?谢谢。













二维码

扫码加我 拉你入群

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

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

关键词:ggplot2 gplot plot 纵坐标 GPL frequency 中文版 如何 艺术

沙发
统计R浪人 发表于 2013-8-31 15:56:37
这是binwidth 大小设置的问题,你把它调大一点就可以了
carat_dist <- ggplot(diamonds, aes(carat)) + xlim(0, 5.5)
carata_dist + geom_freqpoly(aes(y = ..density.., colour = cut),  binwidth = 0.3)
carata_dist + geom_freqpoly(aes(y = ..density.., colour = cut),  binwidth = 0.6)


藤椅
huhuhuhu 发表于 2013-9-1 20:56:31
多谢,马上试一下。

板凳
huhuhuhu 发表于 2013-9-1 21:10:16
多谢二楼,果然解决了纵坐标刻度问题。 谢谢!

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

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