bar

堆叠条形图

条形图
1{
2  "chartType": "bar",
3  "dataset": [
4    { "date": "2019", "profit": 10, "sales": 20 },
5    { "date": "2020", "profit": 30, "sales": 60 },
6    { "date": "2021", "profit": 30, "sales": 60 },
7    { "date": "2022", "profit": 50, "sales": 100 },
8    { "date": "2023", "profit": 40, "sales": 80 }
9  ]
10}

组合堆叠条形图

组合堆叠条形图
1{
2  "chartType": "bar",
3  "measures": [
4    {
5      "id": "sales-and-profit",
6      "alias": "销售额与利润",
7      "children": [
8        {
9          "id": "sales",
10          "alias": "sales"
11        },
12        {
13          "id": "profit",
14          "alias": "利润"
15        }
16      ]
17    },
18    {
19      "id": "ratio",
20      "alias": "比率",
21      "children": [
22        {
23          "id": "rateOfReturn",
24          "alias": "回报率"
25        }
26      ]
27    }
28  ],
29  "dataset": [
30    { "date": "2019", "profit": 10, "sales": 20, "rateOfReturn": 0.1 },
31    { "date": "2020", "profit": 20, "sales": 40, "rateOfReturn": 0.2 },
32    { "date": "2021", "profit": 30, "sales": 60, "rateOfReturn": 0.3 },
33    { "date": "2022", "profit": 40, "sales": 80, "rateOfReturn": 0.4 },
34    { "date": "2023", "profit": 50, "sales": 100, "rateOfReturn": 0.5 }
35  ],
36  "dimensions": [
37    {
38      "id": "date",
39      "alias": "日期"
40    }
41  ]
42}

透视组合堆叠条形图

1export const PivotBarChart = memo(() => {
2  const vseed: VSeed = {
3    chartType: 'bar',
4    dimensions: [
5      { id: 'category', alias: '类别' },
6      { id: 'date', alias: '日期', encoding: 'column' },
7      { id: 'region', alias: '区域', encoding: 'row' },
8    ],
9    measures: [
10      {
11        id: 'group-sales',
12        alias: '销售额分组',
13        children: [{ id: 'sales', alias: '销售额' }],
14      },
15      { id: 'profit', alias: '利润' },
16    ],
17    dataset: [
18      { date: '2019', region: 'east', category: 'Grocery', profit: 10, sales: 100 },
19      { date: '2019', region: 'east', category: 'Beverages', profit: 30, sales: 3200 },
20      { date: '2019', region: 'east', category: 'Dairy', profit: 30, sales: 300 },
21      { date: '2019', region: 'east', category: 'Household', profit: 50, sales: 2400 },
22      { date: '2019', region: 'east', category: 'Personal', profit: 40, sales: 500 },
23      { date: '2019', region: 'west', category: 'Grocery', profit: 10, sales: 100 },
24      { date: '2019', region: 'west', category: 'Beverages', profit: 30, sales: 3200 },
25      { date: '2019', region: 'west', category: 'Dairy', profit: 30, sales: 300 },
26      { date: '2019', region: 'west', category: 'Household', profit: 50, sales: 2400 },
27      { date: '2019', region: 'west', category: 'Personal', profit: 40, sales: 500 },
28
29      { date: '2020', region: 'east', category: 'Grocery', profit: 10, sales: 100 },
30      { date: '2020', region: 'east', category: 'Beverages', profit: 30, sales: 3200 },
31      { date: '2020', region: 'east', category: 'Dairy', profit: 30, sales: 300 },
32      { date: '2020', region: 'east', category: 'Household', profit: 50, sales: 2400 },
33      { date: '2020', region: 'east', category: 'Personal', profit: 40, sales: 500 },
34      { date: '2020', region: 'west', category: 'Grocery', profit: 10, sales: 100 },
35      { date: '2020', region: 'west', category: 'Beverages', profit: 30, sales: 3200 },
36      { date: '2020', region: 'west', category: 'Dairy', profit: 30, sales: 300 },
37      { date: '2020', region: 'west', category: 'Household', profit: 50, sales: 2400 },
38      { date: '2020', region: 'west', category: 'Personal', profit: 40, sales: 500 },
39    ],
40  }
41  return <PivotChart vseed={vseed} />
42})