1

我目前正在使用anycharts react 插件来创建演示,但我不知道如何更改默认主题。有没有人有想法。

我试过:

import React from 'react'
import AnyChart from 'anychart-react'
import './anychart-ui.scss'

const data = [
  ['p1', 5, 4],
  ['p2', 6, 2],
  ['p3', 3, 7],
  ['p4', 1, 5]
]

const complexSettings = {
  width: 800,
  height: 600,
  type: 'column',
  data: 'P1,5\nP2,3\nP3,6\nP4,4',
  title: 'Column chart',
  yAxis: [1, {
    orientation: 'right',
    enabled: true,
    labels: {
      textFormatter: '{%Value}{decimalPoint:\\,}',
      fontColor: 'red'
    }
  }],
  legend: {
    background: 'lightgreen 0.4',
    padding: 0
  },
  lineMarker: {
    value: 4.5
  }
}

const customTheme = {
  // define settings for bar charts
  'bar': {
    // set chart title
    'title': {
      'text': 'Bar Chart',
      'enabled': true
    },
    // settings for default x axis
    'defaultXAxisSettings': {
      // set x axis title
      'title': {
        'text': 'Retail Channel',
        'enabled': true
      }
    },
    // settings for default y axis
    'defaultYAxisSettings': {
      // set axis name
      'title': {
        'text': 'Sales',
        'enabled': true
      }
    }
  }
}

export const AnychartsDemo = (props) => (
  <div style={{ margin: '0 auto' }} >
    <AnyChart
      width={800}
      height={600}º
      type='pie'
      data={[1, 2, 3, 4]}
      title='Simple pie chart'
      theme='Light Blue'
    />
    <hr />
    <AnyChart
      type='column'
      title='Multicolumn chart'
      width={800}
      height={600}
      data={data}
      legend
      theme={customTheme} />
    <AnyChart
      {...complexSettings}
    />
  </div>
)

export default AnychartsDemo

但没有任何效果。

4

1 回答 1

3

让,

要解决这个问题,你必须在第一次使用之前调用anychart.theme('lightBlue') <AnyChart />重要:请使用camelCase)。此外,您需要包含适当的主题:

应用程序.html

<head>

    <script src="http://cdn.anychart.com/themes/latest/light_blue.js"></script>
</head>

或者你可以从cdn下载主题:http: //cdn.anychart.com/#themes

应用程序.js

import React from 'react'
import AnyChart from 'anychart-react'
anychart.theme('lightBlue')
于 2017-04-20T17:54:35.587 回答