首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ILNumerics轴配置

ILNumerics轴配置
EN

Stack Overflow用户
提问于 2015-04-08 02:58:29
回答 1查看 324关注 0票数 3

需要你的建议!

我使用TickCreationFunc和LabelTransformFunc在XAxis上显示时间线

就像这样:

代码语言:javascript
复制
var plotCube = new ILPlotCube(tag, true);

List<Tuple<double, string>> ticks = null;

plotCube.Axes.XAxis.Ticks.TickCreationFunc = (min, max, qty) =>
{
    ticks = AxisHelper.CreateUnixDateTicks(min, max, qty).ToList();

    return ticks.Select(x => (float)x.Item1).ToList();
};

plotCube.Axes.XAxis.Ticks.LabelTransformFunc = (ind, val) =>
{
    if (ticks != null)
        return ticks[ind].Item2;
    else
        return null;
};

plotCube.Axes.XAxis.ScaleLabel.Visible = false; //does not help

结果是相当好的,但是我找不到一种方法来去除刻度标签。

两个附带问题:

1) VS显示警告'ILNumerics.Drawing.Plotting.ILTickCollection.TickCreationFunc‘是过时的:’使用TickCreationFuncEx代替!‘。但是,从来没有调用过TickCreationFuncEx。

( 2)有没有办法告诉ILNumerics不要缩略滴答号?

感谢你的帮助!

EN

回答 1

Stack Overflow用户

发布于 2015-04-08 07:02:51

  1. 这个警告很重要。如果使用新的TickCreationFuncEx,比例标签就会消失。界面非常相似。但是您的函数必须返回IEnumerable<ILTick>: var plotCube = ilPanel1.Scene.First();List> ticks = null;plotCube.Axes.XAxis.Ticks.TickCreationFuncEx =(浮点数、浮点数max、int qty、ILAxis轴、AxisScale比例尺) => { ticks = CreateUnixDateTicks(min、max、qty).ToList();返回//返回IEnumerable!};//您不需要这个//plotCube.Axises.caleLabel.visible= false;
  2. 不能完全禁用缩写。但您可以指定要显示的数字数。直到4.7 (由于一个bug),您将不得不使用以下内容: ilPanel1.SceneSyncRoot.First().Axes.XAxis.Ticks.MaxNumberDigitsShowFull = 10; 从4.8版开始,您不再需要SceneSyncRoot了,可以更直截了当地说: ilPanel1.Scene.First().Axes.XAxis.Ticks.MaxNumberDigitsShowFull = 10;/或就您的情况而言,plotcube.Axes.XAxis.Ticks.MaxNumberDigitsShowFull = 10;

注意:在代码中使用XAxis,而不是YAxis acc。给你的例子

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29505149

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档