显示多个R嵌入图形在多个面板winformc#
本文关键字:winformc# 显示 图形 | 更新日期: 2023-09-27 18:06:45
我想用rnet展示多个嵌入在winformc#中的R图形。我有两种形式。表单1由多个面板组成,表单2由基于用户输入的一些参数组成。我的情况下,用户输入参数后,图形将显示在面板的形式1,而不是在弹出窗口。我已经尝试了一些代码,我从https://rdotnet.codeplex.com/workitem/7或https://peterdaidinh.wordpress.com/2014/09/29/displaying-an-r-graph-within-a-c-net-winform/他们很好地显示嵌入在表单中的图形,但只在一个面板,所以多个图形将只显示在一个面板。我的问题是如何在多个面板中显示多个嵌入图形。这是我的代码在form2:
namespace RNETGraph
{public partial class RGraphForm : Form
{
private readonly RGraphAppHook cbt;
REngine engine;
public RGraphForm()
{
InitializeComponent();
engine = REngine.GetInstance();
}
private void btnShowGraph_Click(object sender, EventArgs e)
{
Panel pan2 = data.getPanel2();
RGraphAppHook cbt1 = new RGraphAppHook { GraphControl = pan2 };
cbt1.Install();
engine.Evaluate("plot(rnorm(100))");
cbt1.Uninstall();
Panel pan1 = data.getPanel1();
RGraphAppHook cbt = new RGraphAppHook { GraphControl = pan1 };
cbt.Install();
engine.Evaluate("plot(rnorm(500))");
cbt.Uninstall();
}
}}
使用win.graph()
或dev.new()
打开一个新的图形窗口:
cbt.Install();
engine.Evaluate("win.graph()");
engine.Evaluate("plot(rnorm(500))");
cbt.Uninstall();