在 R 中以对数比例绘制包含零的数据的散点图
我正在尝试使用“对”绘制一些散点图对。 我的数据框看起来像:
>e
X Y Z
0 0 0
2 3 4
0 3 4
3 3 3
这里是一个完全标准的数据框。
我用它来绘制我的散点图,同样没有什么花哨的:
pairs(~X+Y+Z, data=e, log="xy")
它工作得很好,但它不绘制标签。但是,如果我删除命令中的 log="xy",则标签会很好地绘制。所以我想这与我希望散点图采用对数比例有关。
所以我的问题是我该怎么办? 我应该事先删除所有带零的行吗(你该怎么做?) 有没有一个魔术可以让我有 log="xy" 并标记我的散点图?
如果不清楚,请告诉我。
I am trying to plot some pairs of scatterplots using "pairs".
My dataframe look like :
>e
X Y Z
0 0 0
2 3 4
0 3 4
3 3 3
A completely standard dataframe here.
I use this to plot my scatter plots, again nothing fancy:
pairs(~X+Y+Z, data=e, log="xy")
It works great, but it doesn't plot the labels. However if I remove the log="xy" in the command, then the labels are plotted nicely. So I guess it has to do with the fact that I want my scatterplots to be in log scale.
So my question is what shall I do?
Shall I remove all lines with zeros in it before hand (how do you do that?)
Is there a magic trick that will let me have log="xy" and my scatterplots labeled?
Please let me know if it is not clear.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
你忽略了这一点(我将你的数据框称为
DF
):如果你查看这三十个警告,你会发现
你无法在对数刻度上绘制包含零的数据(我猜你知道为什么)
log
不是pairs()< 的可识别参数/code>
,因此,如果您想要在日志中绘制对数图,您可能必须自己获取日志(并且添加一个小 epsilon 或使用像
log(1 + x)
这样的转换并对该数据调用pairs()
编辑 最简单的是 。可能
pairs(~X+Y+Z, data=log(1+DF))
You ignored this (where I called your data frame
DF
):and if you look at these thirty warnings, you will see that
you cannot plot data containing zeros on a log scale (and I guess you know why)
log
is not a recognised parameter forpairs()
So if you want a pairs plot in logs, you may have to takes logs yourself (and either add a small epsilon or use a transformation like
log(1 + x)
and callpairs()
on that data.Edit The easiest is probably
pairs(~X+Y+Z, data=log(1+DF))