2012-06-29 27 views
16

Làm thế nào tôi có thể tập trung các tiêu đề trong một Chart Line từ Charts API của Google (Không phải Google Chart Images)Trung tâm Align Tiêu đề Google Chart

Tôi không thấy bất kỳ tùy chọn như titlePosition: 'trung tâm'

Cảm ơn !

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

Bản sao có thể có của [Biểu đồ Google: Vị trí tiêu đề biểu đồ hình tròn] (http://stackoverflow.com/questions/16282210/google-charts-pie-chart-title-position) – Adam

Trả lời

19

Tùy chọn này không được cung cấp bởi the API; bạn chỉ đơn giản là không thể làm điều này.

+9

+1 Điều đó cũng giúp ích rất nhiều! Và câu trả lời thực sự tốt, BTW. –

+0

@Lightness Bất kỳ cập nhật nào? –

9

tôi sử dụng: titlePosition: 'none'

Và chèn một tiêu đề với HTML bình thường

1

Bạn có thể dễ dàng làm điều này với thông tin gọi lại từ biểu đồ sau khi nó đã được rút ra và một chút o f toán làm việc trên một số văn bản trong một div.

Chứa biểu đồ của bạn ở vị trí: div tương đối. Thêm một div dưới biểu đồ và vị trí của nó và biểu đồ tuyệt đối.

Sau đó, bạn có thể di chuyển các vị trí hàng đầu của một div & của div xuống bằng một ít môn toán trung học.

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

Sau khi vẽ biểu đồ, gọi hàm xử lý sự kiện:

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

Và xác định các chức năng như:

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>'); 
} 

Chỉ cần chèn các tiêu đề của biểu đồ của bạn và thêm các thuộc tính 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'}) 

// HOẶC

$("#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 ('text') [0] .setAttribute ('x', '350')

+0

Xin chào Daniel, bạn có thể thêm bất kỳ văn bản hỗ trợ nào vào câu trả lời này không? Giải thích lý do tại sao hoạt động đó và có thể liên kết đến các tài liệu API hỗ trợ. –

+0

Vui lòng cung cấp một số mô tả về mã của bạn. – Nevermore

Các vấn đề liên quan