La respuesta correcta es que depende si se trata de Gráficos de Google clásicos o Gráficos de Google Materiales. Si usa la versión clásica de Google Charts, varias de las sugerencias anteriores funcionan. Sin embargo, si utiliza tablas de Google de tipos de material más nuevos, debe especificar las opciones de manera diferente o convertirlas (consulte google.charts.Bar.convertOptions(options)
a continuación). Además de eso, en el caso de gráficos de materiales si especifica una opacidad para todo el gráfico, la opacidad (solo) no se aplicará al área del gráfico. Por lo tanto, debe especificar explícitamente el color con la opacidad para el área del gráfico, incluso para la misma combinación de colores.
En general, la versión material de Google Charts carece de algunas de las características que tiene el Classic (etiquetas de eje inclinado, líneas de tendencia, coloreado de columna personalizado, tablas Combo por nombrar algunas) y vica versa: el formato de número y el los ejes duales (triple, cuádruple, ...) solo son compatibles con la versión Material.
En caso de que una característica sea compatible con ambas, la tabla Material a veces requiere un formato diferente para las opciones.
<body>
<div id="classic_div"></div>
<div id="material_div"></div>
</body>
JS:
google.charts.load('current', { 'packages': ['corechart', 'bar'] });
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
['Year', 'Sales', 'Expenses'],
['2004', 1000, 400],
['2005', 1170, 460],
['2006', 660, 1120],
['2007', 1030, 540],
['2009', 1120, 580],
['2010', 1200, 500],
['2011', 1250, 490],
]);
var options = {
width: 1000,
height: 600,
chart: {
title: 'Company Performance',
subtitle: 'Sales, Expenses, and Profit: 2014-2017'
},
// Accepts also 'rgb(255, 0, 0)' format but not rgba(255, 0, 0, 0.2),
// for that use fillOpacity versions
// Colors only the chart area, simple version
// chartArea: {
// backgroundColor: '#FF0000'
// },
// Colors only the chart area, with opacity
chartArea: {
backgroundColor: {
fill: '#FF0000',
fillOpacity: 0.1
},
},
// Colors the entire chart area, simple version
// backgroundColor: '#FF0000',
// Colors the entire chart area, with opacity
backgroundColor: {
fill: '#FF0000',
fillOpacity: 0.8
},
}
var classicChart = new google.visualization.BarChart(document.getElementById('classic_div'));
classicChart.draw(data, options);
var materialChart = new google.charts.Bar(document.getElementById('material_div'));
materialChart.draw(data, google.charts.Bar.convertOptions(options));
}
violín de demostración: https://jsfiddle.net/csabatoth/v3h9ycd4/2/
La opacidad de campo no funciona para backgroundColor – thermz
Funciona para fillOpacity: 0..1 –