2012-06-29 146 views
16

¿Cómo puede centrar el título I en un gráfico de línea de Google Charts API (no Google Gráfico de Imágenes)Centrar Título Google Chart

no veo ninguna opción como titlePosition: 'centro'

Gracias !

function drawVisualization() { 
    // Create and populate the data table. 
    var data = google.visualization.arrayToDataTable([ 
    ['xValues', 'yValues'], 
    [0, 34.92], 
    [389, 39.44], 
    [488, 52.11], 
    [652, 55.4] 
    ]); 

    var options = { 
    curveType: 'none', // 'function' 
    title: 'Title', 
    titleTextStyle: { 
     color: '333333', 
     fontName: 'Arial', 
     fontSize: 10 
    }, 
    legend: 'none', 
    enableInteractivity: false 
    }; 

    var chart = new google.visualization.LineChart(document.getElementById('visualization')); 
    chart.draw(data, options); 
} 

+0

Posible duplicado de [Google Charts: posición del título del gráfico circular] (http://stackoverflow.com/questions/16282210/google-charts-pie-chart-title-position) – Adam

Respuesta

19

Esta opción no es proporcionado por the API; simplemente no puedes hacer esto.

+9

+1 ¡Eso también ayudó MUCHO! Y realmente es una buena respuesta, por cierto. –

+0

@Lightness ¿Alguna actualización? –

9

que utilizo: titlePosition: 'ninguno'

e insertar un título con HTML normales

1

Usted puede hacer esto fácilmente con la información de devolución de llamada de la tabla después de que se ha dibujado y un poco o f matemática trabajando en un texto en un div.

Contenga su gráfico en una posición: relativa div. Agregue un div debajo del gráfico y colóquelo junto con el gráfico absoluto.

Luego puede mover las posiciones de la parte superior del div & con un poco de matemáticas de la escuela secundaria.

<https://jsfiddle.net/o6zmbLvk/2/> 
2

Después de dibujar el gráfico, llame a la función de controlador de eventos:

google.visualization.events.addListener(chart, 'ready', Title_center); 

y definir la función como:

function Title_center(){ 

    var title_chart=$("#payer_chart_div svg g").find('text').html(); 

    $("#payer_chart_div svg").find('g:first').html('<text text-anchor="start" x="500" y="141" font-family="Arial" font-size="18" font-weight="bold" stroke="none" stroke-width="0" fill="#000000">'+title_chart+'</text>'); 
} 

basta con insertar el título de la tabla y añadir los atributos X:500 , y:141.

0
$("#YOUR_GRAPH_WRAPPER svg text").first() 
    .attr("x", (($("#time-series-graph svg").width() - $("#YOUR_GRAPH_WRAPPER svg text").first().width())/2).toFixed(0)); 

See my explanation here

0
$("text:contains(" + vencOptions.title + ")").attr({'x':'60', 'y':'20'}) 
//

O

$("#YOUR_GRAPH_WRAPPER svg text").first().attr("x", (($("#time-series-graph svg").width() - parseInt($("#YOUR_GRAPH_WRAPPER svg text").first().attr('x'),10))/2).toFixed(0)); 
0

document.getElementById ('divId'). GetElementsByTagName ('texto') [0] .setAttribute ('x', '350')

+0

Hola Daniel, ¿puedes agregar algún texto de apoyo a esta respuesta? Explicando por qué eso funciona y quizás vincule a los documentos de API que lo respaldan. –

+0

Proporcione alguna descripción de lo que hace su código. – Nevermore

Cuestiones relacionadas