【问题标题】:amCharts align values axis' null levelamCharts 对齐值轴的空级别
【发布时间】:2017-05-23 07:56:04
【问题描述】:

我有一个包含多个图表和多个值轴的 Amchart 图表。值可能完全不同,例如,一个图表的值可能在 -3000 到 3000 之间变化,而另一个图表的值是 0-40。

我想要的是表示所有图表,以便它们都可见。所以,我使用 'synchronizeGrid' 选项。

这是我当前的代码:

  "synchronizeGrid": true,
  "valueAxes": [{
    "id": "v1",
    "axisColor": "#FF6600",
    "axisThickness": 2,
    "axisAlpha": 1,
    "position": "left"
  }, {
    "id": "v2",
    "axisColor": "#FCD202",
    "axisThickness": 2,
    "axisAlpha": 1,
    "offset": 50,
    "position": "left"
  }, {
    "id": "v3",
    "axisColor": "#B0DE09",
    "axisThickness": 2,
    "gridAlpha": 0,
    "offset": 100,
    "axisAlpha": 1,
    "position": "left"
  }],

https://jsfiddle.net/fungxbsh/

但是,您可能会注意到 null 级别并不相同,即每个图表在不同的网格线上都有 null 级别。有没有办法强制所有图表使用相同的空级别?

【问题讨论】:

    标签: javascript charts amcharts


    【解决方案1】:

    我发现使三个轴使用相同的“空”值的唯一方法是简单地找到它们每个的最大绝对值并将其设置为maximumminimum 参数,同时定义ValueAxis根据 AmCharts 的文档。

    所以最后,您将拥有三个变量来存储绝对值maxVisitsmaxHitsmaxViews

    然后你像这样设置maximumminimum 参数:

    "valueAxes": [{
        "id": "v1",
        "axisColor": "#FF6600",
        "axisThickness": 2,
        "axisAlpha": 1,
        "position": "left",
        "maximum": maxVisits,
        "minimum": -maxVisits
      }, {
        "id": "v2",
        "axisColor": "#FCD202",
        "axisThickness": 2,
        "axisAlpha": 1,
        "position": "right",
        "maximum": maxHits,
        "minimum": -maxHits
      }, {
        "id": "v3",
        "axisColor": "#B0DE09",
        "axisThickness": 2,
        "gridAlpha": 0,
        "offset": 50,
        "axisAlpha": 1,
        "position": "left",
        "maximum": maxViews,
        "minimum": -maxViews
      }]
    

    最后你需要再次将synchronizeGrid参数设置为false

    See the full example here.

    【讨论】:

    • 这很好用,但有人知道如何在 amcharts 4 中做到这一点吗?
    【解决方案2】:

    这是我想出的最佳解决方案:

    利用:

                "synchronizeWith": "v1",
                "synchronizationMultiplier": sync
    

    例如,在您的 v2 轴上,使用“synchronizeWith”并将值设置为您要同步到的轴。对于乘数,您要查找两个轴上的最大值,然后将较小的值除以较大的值,得到一个比率。这个比率就是你的乘数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-09
      相关资源
      最近更新 更多