Amchart注释。从注释模式返回正常模式

时间:2017-06-06 07:11:34

标签: annotations amcharts

我正在使用外部按钮导出am图表。当我进入注释模式并进行导出时,图表将以注释导出。但是当图表重新加载时,注释模式不会恢复。

有人可以让我知道如何从注释回到普通模式。

 if (chart.export.drawing.buffer.enabled === true) {
                 // Exporting the annotated chart with out " 
                 //chart.export.capture"
                chart.export.toPNG({}, function (data) {
                    chartimage.postImageData(data, chart_image_name)
                });
            } else {

                chart.export.capture({
                    // action: "draw"

                }, function () {
                    this.toPNG({

                    }, function (data) {
                        images.push({
                            "image": data,
                            "fit": [523.28, 769.89]
                        });
                        pending--;
                        if (pending === 0) {
                            chart.export.toPNG({
                                content: images
                            }, function (data) {
                                chartimage.postImageData(data, chart_image_name)
                            });
                        }
                    });
                });
            }

        }

2 个答案:

答案 0 :(得分:2)

要退出注释模式,只需使用Export plugin的内部API方法done()

chart["export"].drawing.handler.done();

BTW,export关键字是保留的,会导致某些浏览器出错。最好通过命名密钥访问Export实例:chart["export"].toPNG()chart.export.toPNG()

答案 1 :(得分:0)

请找到下面的解决方法..

首先使用菜单审阅者

捕获设置和取消注释的事件
menuReviver: function (item, li) {
    if (item.format === "XLSX" || item.format === "JSON") {
    li.style.display = "none";
    }

    $(li).click(function () {
    if (item.action == "draw") {
        $("#chart_annotations").val(1);
    }
    if (item.action == "cancel") {
        $("#chart_annotations").val(0);
    }

    });

    return li;
}

现在,在导出图表图像时,使用$("#chart_annotations")。val()值作为 标记是否导出带注释的图表或普通图表。请找到以下代码......

if (window.fabric) {
    if ($("#chart_annotations").val() == 1) {
        chart.export.toPNG({}, function (data) {
        chartimage.postImageData(data, chart_image_name)
        });
    } else {

        chart.export.capture({
        //action: "change"

        }, function () {
        this.toPNG({

        }, function (data) {
            images.push({
            "image": data,
            "fit": [523.28, 769.89]
            });
            pending--;
            if (pending === 0) {
            chart.export.toPNG({
                content: images
            }, function (data) {
                 //post the image data using ajax
                chartimage.postImageData(data, chart_image_name)
            });
            }
        });
        });
    }