C# - Oxyplot:如何将文本显示为跟踪器值
C# - Oxyplot: How to display text as a tracker value
我正在使用 oxyplot(C#,windows 形式)绘制实验日志文件。用户可以在测试期间输入注释,这些注释与文本和时间戳一起保存,并应与数据一起显示在图中。我最初尝试使用 TextAnnotations,但注释可能比注释允许的更冗长和频繁。
我的解决方案是制作一个散点图并将评论设为单个数据点,然后在将鼠标悬停在上面时在跟踪器中显示评论的时间戳和文本。不过,我现在无法显示文字。
我为我的数据点创建了一个新的 class 来保存文本,ScatterSeries 将接受它:
public class CommentPoint : IScatterPointProvider
{
public CommentPoint(double x, double y, string text)
{
X = x; Y = y; Text = text;
}
public double X, Y;
public string Text;
public ScatterPoint GetScatterPoint()
{
return new ScatterPoint(X, Y);
}
}
然后,我尝试修改 TrackerFormatString,使其显示文本:
Series.TrackerFormatString = "{2}\n{Text}";
但是当悬停在数据点上时,跟踪器只显示时间戳,而不显示文本。我之前可以通过显示自定义数字来完成这项工作,但我不知道是否可以使用字符串。
这是适用于不同系列的方法:
Series.TrackerFormatString = "{0}\n{2}\n{Scale:#.00 " + unit + "}";
其中"Scale"是我要显示的自定义属性。所以我想问题是,我是否需要添加一些东西到 {Text} 才能 work/is 在跟踪器中显示文本?
编辑:我忘了补充,我的紧急解决方案是将评论保存在 ScatterSeries 的标题中,并为每个评论制作一个新系列,但我希望尽可能避免这种情况。
我没试过,但我很确定它会起作用,如果你把 Text
变成 属性。您只能绑定到属性,而不是普通的 class 成员,我认为后台正在进行一些绑定。所以试试这个:
public string Text {get; set;}
这会使它非常像示例 here。
我正在使用 oxyplot(C#,windows 形式)绘制实验日志文件。用户可以在测试期间输入注释,这些注释与文本和时间戳一起保存,并应与数据一起显示在图中。我最初尝试使用 TextAnnotations,但注释可能比注释允许的更冗长和频繁。
我的解决方案是制作一个散点图并将评论设为单个数据点,然后在将鼠标悬停在上面时在跟踪器中显示评论的时间戳和文本。不过,我现在无法显示文字。
我为我的数据点创建了一个新的 class 来保存文本,ScatterSeries 将接受它:
public class CommentPoint : IScatterPointProvider
{
public CommentPoint(double x, double y, string text)
{
X = x; Y = y; Text = text;
}
public double X, Y;
public string Text;
public ScatterPoint GetScatterPoint()
{
return new ScatterPoint(X, Y);
}
}
然后,我尝试修改 TrackerFormatString,使其显示文本:
Series.TrackerFormatString = "{2}\n{Text}";
但是当悬停在数据点上时,跟踪器只显示时间戳,而不显示文本。我之前可以通过显示自定义数字来完成这项工作,但我不知道是否可以使用字符串。
这是适用于不同系列的方法:
Series.TrackerFormatString = "{0}\n{2}\n{Scale:#.00 " + unit + "}";
其中"Scale"是我要显示的自定义属性。所以我想问题是,我是否需要添加一些东西到 {Text} 才能 work/is 在跟踪器中显示文本?
编辑:我忘了补充,我的紧急解决方案是将评论保存在 ScatterSeries 的标题中,并为每个评论制作一个新系列,但我希望尽可能避免这种情况。
我没试过,但我很确定它会起作用,如果你把 Text
变成 属性。您只能绑定到属性,而不是普通的 class 成员,我认为后台正在进行一些绑定。所以试试这个:
public string Text {get; set;}
这会使它非常像示例 here。