2011-07-29 35 views
31

Tôi đang tạo Biểu đồ đường Google này bằng API Google JS. Như bạn có thể thấy, các nhãn rất hẹp. Làm thế nào để tôi làm cho nó để hiển thị toàn bộ văn bản nhãn?Cách đặt chiều rộng chú thích Google Charts trong JavaScript?

enter image description here

+0

Bạn có thể đưa mã mẫu không? Ví dụ tại http://code.google.com/apis/ajax/playground/?type=visualization hiển thị nhiều văn bản hơn trong các chú thích mà không bị cắt bớt. –

+0

@Bernhard Hoffman: Bạn đang đề cập đến ví dụ nào? –

+0

Họ đặt quá nhiều thời gian vào việc làm cho các biểu đồ mẫu trông tốt và quên các tính năng cơ bản như một số tùy chọn chú giải và trục (ví dụ: trục y nguyên dương này) ... Ngoài ra, API không phải là trực quan nhất đã được sử dụng. – keyser

Trả lời

36

Dưới đây là một số mẫu dựa trên google code playground line charts. Điều chỉnh tùy chọn độ rộng chartArea cho nhiều không gian hơn cho các nhãn:

new google.visualization.LineChart(document.getElementById('visualization')). 
    draw(data, {curveType: "function", 
       width: 500, height: 400, 
       vAxis: {maxValue: 10}, 
       chartArea: {width: '50%'}} 
     ); 

Nếu đó là một lựa chọn, bạn cũng có thể xác định vị trí các nhãn bên dưới bảng xếp hạng, trong đó cung cấp đáng kể thêm không gian:

new google.visualization.LineChart(document.getElementById('visualization')). 
    draw(data, {curveType: "function", 
       width: 500, height: 400, 
       vAxis: {maxValue: 10}, 
       legend: 'bottom'} 
     ); 
+2

Tôi đã tìm thấy công việc này xung quanh mình. Tôi hy vọng cho một tài sản có thể được sử dụng để thiết lập chiều rộng chú thích.Nếu không có bất kỳ câu trả lời nào cuối tuần, tôi sẽ đánh dấu câu trả lời này là chính xác. –

+5

Truyền thuyết dường như được bao gồm trong khu vực biểu đồ. Làm cho khu vực biểu đồ nhỏ hơn, thậm chí còn ít chỗ cho truyền thuyết. – pbz

+0

Tùy chọn cấu hình cho biểu đồ dạng đường biểu thị rằng biểu đồArea phải biểu thị vị trí bản thân biểu đồ được vẽ trừ trục và truyền thuyết, nhưng tôi có thể hiểu sai điều này. Các mẫu sân chơi mã dường như làm việc như mong đợi đối với tôi. Bạn nhận thấy đầu ra nào? – oli

1

Bạn cần làm cho biểu đồ rộng hơn hoặc nhãn ngắn hơn.

+1

Vâng ... Tôi nghĩ về điều đó, nhưng tôi đã làm cho biểu đồ của tôi rộng 1000px (hoàn toàn không thể chấp nhận được) nhưng các nhãn vẫn không phù hợp. –

+2

Cũng có thể hữu ích nếu anh ta làm cho giá trị trục Y nhỏ hơn. Sử dụng kb/giây hoặc mb/giây. –

17

Mở rộng tùy chọn chartArea với chiều rộng 100% đã giải quyết được vấn đề cho tôi. Trái với tài liệu, biểu đồArea bao gồm chú giải. Tôi đã sử dụng một PieChart nhưng tùy chọn tương tự có sẵn cho LineChart.

var options = {'title':title,'width':w,'height':h,'chartArea':{left:0,top:10,width:"100%"}}; 
var chart = new google.visualization.PieChart(document.getElementById(chartDiv)); 
chart.draw(data,options); 

Reference.

+5

Dường như nó bị loại trừ ngay bây giờ. Giảm chiều rộng làm việc cho tôi. – keyser

+1

Giảm chiều rộng cũng làm việc cho tôi. – user1477388

1

Có một tùy chọn trong legend.textStyle chúng ta có thể tùy chỉnh phong cách văn bản truyền thuyết bên trong bảng xếp hạng google

var options = { 
       legend: { textStyle: { fontSize: 78 //size of the legend 
       } } 
       } 
+0

Thuộc tính 'legend.textStyle' không cung cấp giải pháp cho câu hỏi. Xem tại đây: https://developers.google.com/chart/interactive/docs/gallery/piechart –

3

Không ai trong số các câu trả lời trước đã làm việc tốt cho tôi. Đặt chiều rộng xuống dưới 100% trung tâm khu vực ô và để lại quá nhiều khoảng trống không sử dụng ở bên trái. Đặt nó thành 100% cũng không phải là một giải pháp.

gì làm việc tốt - see live working fiddle - là thiết lập quyền giá trị để thích ứng với truyền thuyết, sau đó điều chỉnh trái giá trị cuối cùng, đối với tiêu đề trục Y và nhãn. Diện tích lô chiều rộng sẽ tự động điều chỉnh giữa hai lề cố định sau:

var options = { 
    ... 
    legend: { position: 'right' }, 
    chartArea: { 
     right: 130, // set this to adjust the legend width 
     left: 60,  // set this eventually, to adjust the left margin 
    }, 
    ... 
}; 
Các vấn đề liên quan