用 R 绘制大数字,但并非所有数字都显示

Posted

技术标签:

【中文标题】用 R 绘制大数字,但并非所有数字都显示【英文标题】:Plotting large numbers with R, but not all numbers are being shown 【发布时间】:2011-08-12 01:14:50 【问题描述】:

我正在尝试使用 R 在图形上渲染 739455 个数据点,但在 x 轴上我无法查看所有这些数字,有什么办法可以做到吗?

我是 R. 的新手

谢谢

【问题讨论】:

请尝试澄清这个问题。你想要更多的 x 轴刻度并让它延伸得更远吗?您想查看每个单独的数据点吗?目前还不清楚您要的是什么。 在单个图上查看 750k 个单独的点是一项艰巨的任务。您可以将 ggplot2 中的 alpha 参数视为减少过度绘图的一种方法。您的数据集中是否还有其他变量可以帮助您将其拆分为几个不同的图?在这里查看带有 alpha 的 ggplot 示例:had.co.nz/ggplot2/geom_point.html 听起来您想要在 x 轴上为数据中的每个 ~750k x 值添加一个刻度线。假设我们只给每个刻度线一个像素。那是大约 750k 像素宽。你的电脑屏幕有多大? 我的意思是,要查看每个单独的点,您将需要一个巨大的屏幕。也许可视化这些数据的最佳方式是聚合它?也许是直方图? ...或按照您在上一个问题中得到的advice 并使用 hexbin。 【参考方案1】:

正如其他人建议的那样,尝试histhexbinplot(density(node)),因为这些是处理点多于像素的标准方法。 (我喜欢用参数breaks = "FD" 设置hist - 它往往比默认设置有更好的断点。)

您可能会在使用iplots 包这一交互式绘图包中找到乐趣。对应的命令包括ihistiplot等。当你有一台 Mac 时,更新的 Acinonyx 包可能会更有趣。您可以很容易地放大和缩小。我建议从iplots 包开始,因为它有更多文档和a nice site。

如果您有一个包含多个变量的数据框,而不仅仅是 node,那么能够链接不同的图,以便一个图中的刷点在另一个图中突出显示它们将使整个过程更加刺激和高效。

这并不是说您应该忽略 hexbin 和其他想法 - 这些仍然非常有用。请务必查看 hexbin 的选项,例如?hexbin.

【讨论】:

以上是关于用 R 绘制大数字,但并非所有数字都显示的主要内容,如果未能解决你的问题,请参考以下文章

主席树(静态区间第k大)

闪亮的反应式下拉菜单行为不端(带有数字输入)

那么大奶牛之神

大数据搜索引擎 Elasticsearch 数字类型(numeric)数据的处理与搜索原理。

PHP 如何显示大数字,防止显示为 科学计数法 形式

格式化一个大的double以显示四位有效数字