在R中手动绘制曲线,类似于Paint

3

我想让用户提供一条曲线,以便进行某些分析。是否有可以用于此目的的软件包?基本上,像画图这样的GUI,在其中用户可以绘制简单的曲线,并将其存储在R中作为一组数据点或方程式(如果是简单的曲线)。

谢谢 Gopher

1个回答

1

读取鼠标输入

以下是解决问题的一些示例方法,从最复杂到最简单(在我看来)。

  1. 我建议您查看qtpaint包。
  2. 较少费力的解决方案可能涉及查看Shiny中处理交互式图的方式。使用click选项将使您能够获得鼠标光标位置。与Shiny框架一起使用,这将提供一个方便的包装器,以从用户那里获取鼠标输入。
  3. 最后,第三种方法可以依赖于使用graphics包中可用的locator函数。根据您打算做什么,这可能是最简单的解决方案,因为您可以使用读取的值来通知生成您的图形。

生成图形

假设您通过 locator 功能获取了您的值,您可以尝试使用 segments 绘制您的线条。这可能有点麻烦,因为您需要将坐标转换为所需图表中点的某些位置,但这不会在计算上太过费力,只是将鼠标指针值带到图表上的一些 x/y 值而已。


如果您愿意更新您的帖子,并提供一些示例代码和可重现的尝试,我敢打赌这个问题会收到更多的回复。您可以在R中找到this discussion有关制作可重现示例的有用信息。

非常感谢。定位器函数正是我要找的东西。我创建了一个空白图并让用户选择点,之后定位器会保存这些点的x和y值,并且用type="l"参数在它们之间画直线。 - gopher kri

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接