Ext JS 6 Classic Chart - Truncate Axis

时间:2018-06-08 17:07:20

标签: javascript extjs

我用连续数字轴demo创建了一个笛卡尔图。有没有办法使用相同的数字数据,但在我的图表中截断更高的x轴值?见下面的模型:mockup

1 个答案:

答案 0 :(得分:1)

这不是一个解决方案,而是一个建议,但是太大了,不能放在评论中。

您可以像这样格式化轴:

x = 1

在数字10(或您想要的任何其他值)之后,您开始使用渲染功能更改显示值。

在这种方法中,您必须修改商店值以匹配图表新值,例如,在下面的记录中:

{
    type: 'numeric',
    position: 'top',
    fields: 'start',
    grid: {
        stroke: '#ccc'
    },
    style: 'font-size:3pt',
    minimum: 0,
    maximum: 16,
    layout: 'continuous',

    renderer: function(axis,label,layoutContext,lastLabel  ) {
        if (label >14){
            label = '<60';
        } else if (label>13){
            label = '<50';
        } else if (label>12){
            label = '<40';
        } else if (label>11){
            label = '<30';
        } else if (label>10){
            label = '<20';
        }
        return label;
    },
    label:{
         fontSize: '10px' 
    }

如果&#34;开始&#34; &gt; 10和&lt; 20,将其更改为11,如果&#34;开始&#34; &gt; 20和&lt; 30将其改为12,依此类推。 (如果您在商店中有访问权限或可能是转换函数,则更改您可以使用sql) 同样的事情(&#34;关闭&#34; +&#34;开始&#34;),在这个时间里,&#34;调整&#34;记录将是:

{
    "stepNum": 4,
    "name": "Test 1",
    "start": 12,
    "closed": 25
}

我希望你理解我试图解释的内容,我的英语不太好:)。