1

我是 highchart 的新手,正在使用它在我的网页上呈现条形图。但是打印时图表没有显示。只有 X 和 Y 轴正在打印值,而不是上面的条形图。我正在使用 IE8。条形图在 IE8 模式下可见(打印时),但在 IE8 兼容模式下不可见。我需要让它在 IE 默认模式下工作,即 IE8 兼容。模式。

任何人都可以在这个问题上帮助我。

我正在添加我的 js 函数的代码块,我在灯箱窗口中打印我的 highchart。

      var chart = new Highcharts.Chart({
        chart: {
            renderTo: 'containerDivID',
            type: 'column'
        },
        title: {
            text: ''
        },
        xAxis: {
               categories: xDataValues

        },
        yAxis: {
            min: 0,
            title: {
                text: ''
            }
        },
        tooltip: {
            formatter: function() {
                return ''+
                    this.x +': '+ this.y +' kr';
            }
        },

        plotOptions: {
            column: {
                stacking: 'normal',
                borderWidth: 1,
                dataLabels: {
                    enabled: false,
                    color: (Highcharts.theme && Highcharts.theme.dataLabelsColor) || 'white'
                }
            }
        }
        ,
        yAxis: {
            labels: {
                formatter: function() {
                    return this.value;
                }
            },
            title:{
                text: ''
            }
        },
        series: [
          {
            name: 'YAxis',
            color: '#37789F',
            data: yDataValues
        }

        ],
        credits:{
            enabled: false
        }
    });

在这个灯箱中,我有一个打印按钮,按下这个按钮我正在调用 window.print() 来打印页面。在我的打印页面上,我可以看到 y 轴和 x 轴以及那里的数据,但看不到我的条形图。但是如果我将 IE8 模式从兼容模式更改为 IE8 标准模式,那么我可以在打印时看到我的图表。

问候, 安迪

4

2 回答 2

0

对我来说,我没有使用该print()功能来打印图表,因为我需要使用图表打印额外的数据;因为我的图表是报告的一部分。

请找到我写的自定义打印功能:

 function printReport() {
    w = window.open();
    var svg = myChart.getSVG();

    //clone the div you want to print which contains your chart
    var toprint = $('#bs-results') .clone();

    //replace the chart with the svg
    toprint.find('#graph_div').html(svg);

    //right the output to print it
    w.document.write(toprint.html());

    w.print();
    w.close();
}
于 2017-02-21T23:14:54.640 回答
-1

请查看兼容性页面http://www.highcharts.com/documentation/compatibility,我们支持原生浏览器但不支持兼容模式。

于 2013-03-15T09:09:09.333 回答