如何在amchart中向面板标题添加HTML

时间:2018-02-05 12:29:18

标签: javascript html css amcharts

如何在amchart中向面板标题添加HTML。我尝试为标题添加HTML,但仅将其呈现为HTML代码。

这是DEMO

以下是JavaScript代码:

var chartData1 = [];
var chartData2 = [];



generateChartData();

function generateChartData() {
    var firstDate = new Date();
    firstDate.setDate(firstDate.getDate() - 500);
    firstDate.setHours(0, 0, 0, 0);

    for (var i = 0; i < 500; i++) {
        var newDate = new Date(firstDate);
        newDate.setDate(newDate.getDate() + i);

        var a1 = Math.round(Math.random() * (40 + i)) + 100 + i;
        var a2 = -1 * Math.round(Math.random() * (100 + i)) + 200 + i;

        chartData1.push({
            date: newDate,
            value: a1
        });
        chartData2.push({
            date: newDate,
            value: a2
        });
    }
}

AmCharts.makeChart("chartdiv", {
    type: "stock",

    dataSets: [{
            title: "first data set",
            fieldMappings: [{
                fromField: "value",
                toField: "value"
            }],
            dataProvider: chartData1,
            categoryField: "date"
        },

        {
            title: "second data set",
            fieldMappings: [{
                fromField: "value",
                toField: "value2"
            }],
            dataProvider: chartData2,
            categoryField: "date",
            compared: true
        }
    ],

    panels: [{

            showCategoryAxis: false,
            title: "<span>Hello</span>",
            recalculateToPercents: "never",
            stockGraphs: [{
                id: "g1",
                valueField: "value",
                comparable: true
            }],

            stockLegend: {

            }
        }, {

            showCategoryAxis: true,
            title: "Data set #2",
            recalculateToPercents: "never",
            stockGraphs: [{
                id: "g2",
                valueField: "value2",
                compareField: "value2",
                comparable: true,
                visibleInLegend: false
            }],

            stockLegend: {

            }
        }
    ],

    chartScrollbarSettings: {
        graph: "g1"
    },

    chartCursorSettings: {
        valueBalloonsEnabled: true,
        cursorColor: '#000000',
        cursorAlpha:0.1
    },

    periodSelector: {
        periods: [{
            period: "MM",
            selected: true,
            count: 1,
            label: "1 month"
        }, {
            period: "YYYY",
            count: 1,
            label: "1 year"
        }, {
            period: "YTD",
            label: "YTD"
        }, {
            period: "MAX",
            label: "MAX"
        }]
    }
});

1 个答案:

答案 0 :(得分:0)

它只支持文字。根据您的需要,您可以使用addClassNames在图表中将generated CSS classes设置为true,然后使用css直接设置样式。例如,要更改第一个面板的图例标题的颜色:

.amcharts-stock-panel-div-stockPanel0 .amcharts-legend-title {
  fill: #ee0000;
}

Demo