На тот случай, если у кого-то возникнет та же проблема, что и у меня, вы можете также зафиксировать фон только на диаграмме, а не весь блок (который добавит фон к заголовку, оси и т. Д.)
Вы можете сделать это следующим образом:
В HTML, как предложил Хайме:
<div id='brand_div'>
<div id='chart_div'></div>
</div>
В CSS, как предложил Хайме:
#brand_div{
background: url(<SOME-URL>) no-repeat;
}
В JavaScript:
google.charts.load("current", {packages:["corechart"]});
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
['ID', 'X', 'Y', 'Temperature'],
['', 80, 167, 120],
['', 79, 136, 130],
['', 78, 184, 50],
['', 72, 278, 230],
['', 81, 200, 210],
['', 72, 170, 100],
['', 68, 477, 80]
]);
var options = {
colorAxis: {colors: ['yellow', 'red']},
width: 450,
height: 300,
title: 'My Daily Activities',
backgroundColor: 'none' // this is important!
};
var chart = new google.visualization.BubbleChart(document.getElementById('chart_div'));
chart.draw(data, options);
// this two lines are the ones that do the magic
var boundingBox = chart.getChartLayoutInterface().getChartAreaBoundingBox();
$('#brand_div').css('background-position', boundingBox.left + "px " + boundingBox.top + "px").css('background-size', boundingBox.width + "px " + boundingBox.height + "px");
}
Весь этот код был написан с использованием предложения Хайме, Документация Google Chart и комментариев к этот вопрос переполнения стека