我对Teechart的能力有一些疑问,我在TeeChart例子中找不到。
1)使用不同的缩放Y轴进行静态X轴是否可行,当图表到达窗口右侧时,可以增加其最大值,并将当前图表的可见部分向左滚动,滚动允许查看图表历史的栏。 (就像它在Welcome!\ Chart styles \ Standard \ Line(Strip)\ Realtime charting中所做的那样,但是每一行都有自己的轴(轴可能有不同的比例),只有当图表达到最右边的某个固定值时才会滚动X轴值,并具有远程图表到X的任何前期间隔的能力(如在时间轴上移动的时间窗口))。
2)如果第一个没问题,是否可以在图表上制作一个特殊的标签(如图表上带有标签的水平线)。
3)如果我有一条折线或轮廓,我可以通过一个字段移动一个点值吗? (例如,在插值的情况下,可以通过在给定插值点的图表上向右移动鼠标来改变Y值)。是否有任何特殊的消息,让我们这样做?贝塞尔曲线控制点的问题相同。
答案 0 :(得分:1)
是的,您可以在图表中有多个自定义轴,如中所述 教程4和所有功能\欢迎!\ Axes 部分中的示例 功能演示。对于滚动部分,您需要我推荐 Scroll Pager工具演示在什么是新的?\欢迎!\新图表 Tools \ ScrollPager工具。教程和功能演示都是 可在TeeChart的计划小组获得。
我建议将ColorLine工具与Annotation工具结合使用 这个。可以找到一个示例here。或者你可以画画 图表画布中的自定义文本,如下例所示:
public Form1()
{
InitializeComponent();
InitializeChart();
}
private Steema.TeeChart.Tools.ColorLine colorLine1;
private void InitializeChart()
{
tChart1.Aspect.View3D = false;
tChart1.Series.Add(new Steema.TeeChart.Styles.HorizBar()).FillSampleValues();
colorLine1 = new Steema.TeeChart.Tools.ColorLine(tChart1.Chart);
colorLine1.Axis = tChart1.Axes.Bottom;
colorLine1.Value = tChart1[0].MinXValue() + (tChart1[0].MaxXValue() - tChart1[0].MinXValue()) / 2;
tChart1.AfterDraw += tChart1_AfterDraw;
}
void tChart1_AfterDraw(object sender, Steema.TeeChart.Drawing.Graphics3D g)
{
string text = "My custom caption";
SizeF size = g.MeasureString(g.Font, text);
Rectangle rect = tChart1.Chart.ChartRect;
int x = tChart1.Axes.Bottom.CalcPosValue(colorLine1.Value) - (int)size.Height;
int y = rect.Top + (int)size.Width + 5;
g.Font.Color = Color.Red;
g.RotateLabel(x, y, text, 90);
}
有DragPoint工具。请参阅所有功能\欢迎 功能演示中的!\ Tools \ Drag Point 示例。但是,使用 这个工具你将能够改变源系列中的点, 不计算系列。多项式,轮廓和贝塞尔曲线 系列/函数是根据给定的源数据计算的。你不会 能够直接修改这些计算值,你必须这样做 修改源数据系列,以便重新计算它们。