0

我很感激这方面的任何帮助。

我需要做的是每次向其中添加一些数据时刷新/更改实时图表的背景图像。实时数据部分工作正常。

我试过“chart.plotBGImage.attr({href: 'xxx'});” 方法,但我收到一个错误:“无法读取未定义的属性 'plotBGImage'”。

关于什么是错的或不同的方法的任何想法?

到目前为止,这是我的代码:

<script type="text/javascript">
    var chart1; 

    function requestData() {
        $.ajax({
            url: 'get_data/getECGdata.php',
            success: function(point) {

                var series1 = chart1.series[0],
                shift = series1.data.length > 20; 

                // add the point
                chart1.series[0].addPoint(eval(point), true, shift);    


                //The line below is the one giving the error
                //this.chart1.plotBGImage.attr({href: "http://www.highcharts.com/images/stories/logohighcharts.png"});              

                // call it again after one/two/etc seconds
                setTimeout(requestData, 1000);  
                },
            cache: false
        });
    }

    $(document).ready(function() {

        chart1 = new Highcharts.Chart({
            chart: {
                renderTo: 'container',
                zoomType: 'x',
                backgroundColor:'rgba(255, 255, 255, 0.4)',
                defaultSeriesType: 'line',
                marginTop: 60,
                events: {load: requestData}
            },
            title: {text: 'Live ECG data'},
            xAxis: {type: 'datetime', tickPixelInterval: 150, maxZoom: 20 * 1000},
            yAxis: {minPadding: 0.2, maxPadding: 0.2, title: {text:'ECG reading', margin: 20 } },
            tooltip: {xDateFormat: '%H:%M:%S', shared: true},
            credits: {enabled: false},
            series: [
                    {name: 'ECG', color: 'green', data: [] }

                ]
        });

    });
    </script>
4

4 回答 4

1

命令:

chart.highcharts().plotBGImage.attr({href: picturePath});

允许更改图表上的图像。单击按钮后我更改了图像,所以这有效。在我的项目picturePath中是带有图片的文件夹的路径:“Pictures/example.png”

确切的代码:

self.chartPlot = chart.highcharts();
...
self.pic = ...;
self.chartPlot.plotBGImage.attr({href: self.pic});// changes the image on the chart.

现在(2014 年 11 月)我正在我的项目 www.tanks-vs.com 上积极使用 Highcharts 和这个命令。所以 1 或 2 周后它会在那里实施,你可以看到。

于 2014-11-26T19:09:28.713 回答
1

这就是我更改图表背景图像的方式:下载任何模式并将其放在您的图像文件夹中,现在只需在您的 highchart 中添加以下代码:

  chart: {  
    plotBackgroundImage:'/assets/lightpaperfibers.png',
  },

在路径中写入图像的名称,即“/assets/your_image.png”

于 2014-07-09T10:56:42.223 回答
0

我了解您正在尝试更改 Highchart 中的背景图像。

只是给予chart.plotBGImage.attr({href: 'xxx'});无济于事,你需要重新加载整个 HighChart。

我这样做了(没有实时数据部分,因为它对你来说很好用!!)小提琴

于 2013-06-19T12:26:37.893 回答
0

您可以通过以下方式禁用标准 bacrkgoudn 颜色:

backgroundColor: 'rgba(255,255,255,0)'

然后在 CSS 中为#contaniner 设置背景,并使用 jquery / javacript 对其进行修改。

示例:http: //jsfiddle.net/LGzuj/

于 2013-06-19T11:51:19.220 回答