首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >合并Highcharts和Area Chart

合并Highcharts和Area Chart
EN

Stack Overflow用户
提问于 2018-11-15 18:29:15
回答 1查看 117关注 0票数 2

我希望结合一个高表图表与非极点图表,如面积。我已经创建了两组独立的x轴和y轴,以及两个窗格,并将它们分配给相关的系列。

代码语言:javascript
复制
pane: [undefined,
  {
    startAngle: -90,
    endAngle: 90,
    background: null,
    size: "50%",
    center: ["80%", "75%"]
  }
],
xAxis: [{
    type: "datetime",
    pane: 0
  },
  {
    pane: 1
  }
],
yAxis: [{
    title: {
      text: "Views"
    },
    min: 0,
    pane: 0,
    type: "linear"
  },
  {
    pane: 1,
    labels: {
      enabled: false
    },
    tickPositions: [],
    minorTickLength: 0,
    min: -10,
    max: 10,
    plotBands: [{
      from: -10,
      to: 3,
      color: 'rgb(192, 0, 0)', // red
      thickness: '50%'
    }, {
      from: 3,
      to: 5,
      color: 'rgb(255, 192, 0)', // yellow
      thickness: '50%'
    }, {
      from: 5,
      to: 10,
      color: 'rgb(155, 187, 89)', // green
      thickness: '50%'
    }]
  }
]

不幸的是,感觉chart.polar设置只适用于图表级别,而不是按系列应用。这会导致图表要么是所有窗格和轴的极轴,正确显示仪表盘,但错误地显示区域;要么不是极轴,正确显示区域,但不显示仪表盘。

有没有一种方法可以将仪表(或任何highcharts极地图表)和非极地highcharts (如area )组合在一个图表中?或者我坚持创建两个图表并重叠div?

在计量器处于活动状态的情况下,从数据生成两个计量器:https://jsfiddle.net/stefaniev/jbx6cwLz/12/

代码语言:javascript
复制
series: [{
    name: "Series 1",
    data: [....],
    type: "area",
    "color": "rgba(240,240,240,0.01)",
    "pointStart": 1542153600000,
    "pointInterval": 900000,
    yAxis: 0,
    xAxis: 0
  },
  {
    "name": "Series 2",
    "data": [....],
    "type": "area",
    "color": "#09C98D",
    "pointStart": 1542153600000,
    "pointInterval": 900000,
    yAxis: 0,
    xAxis: 0
  },
  {
    type: 'gauge',
    name: 'Doing poorly',
    yAxis: 1,
    xAxis: 1,
    data: [-3]
  }
]

相同的JSFiddle,但是使用gauge系列注释掉了,面积图正确地呈现:https://jsfiddle.net/stefaniev/jbx6cwLz/13/

代码语言:javascript
复制
series: [{
    name: "Series 1",
    data: [....],
    type: "area",
    "color": "rgba(240,240,240,0.01)",
    "pointStart": 1542153600000,
    "pointInterval": 900000,
    yAxis: 0,
    xAxis: 0
  },
  {
    "name": "Series 2",
    "data": [....],
    "type": "area",
    "color": "#09C98D",
    "pointStart": 1542153600000,
    "pointInterval": 900000,
    yAxis: 0,
    xAxis: 0
  },
 /* {
    type: 'gauge',
    name: 'Doing poorly',
    yAxis: 1,
    xAxis: 1,
    data: [-3]
  }*/
]

如有任何帮助或建议,我们将不胜感激!

EN

回答 1

Stack Overflow用户

发布于 2018-11-16 22:48:36

...

不幸的是,感觉chart.polar设置只适用于图表级别,而不是按系列(...)

是的,你是对的。在同一图表中,不能同时使用polar和其他图表类型。下面是如何在不同的容器中创建这些类型的图表的示例:

代码语言:javascript
复制
Highcharts.chart('container1', {
    series: [{
        data: [43934, 52503, 57177, 69658, 97031, 119931, 137133, 154175]
    }]
});

Highcharts.chart('container2', {
    chart: {
        type: 'gauge',
        height: 200,
        width: 200,
        backgroundColor: 'rgba(0,0,0,0)'
    },
    credits: {
        enabled: false
    },
    title: {
        text: ''
    },
    yAxis: {
        min: 0,
        max: 200
    },
    pane: {
        startAngle: -150,
        endAngle: 150
    },
    series: [{
        data: [110]
    }]
});

现场演示:http://jsfiddle.net/BlackLabel/n54k3cpL/

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

https://stackoverflow.com/questions/53317354

复制
相关文章

相似问题

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