2012-06-19 24 views
5

Đây là chức năng ngắn của tôi mà giữ lấy "Những cột đó nằm ngoài giới hạn"sử dụng EmbeddedChartBuilder và 'nhận được cột nằm ngoài giới hạn'

function myFunction() { 
var sheet = SpreadsheetApp.getActiveSheet(); 
var range = sheet.getDataRange(); 
var chartBuilder = sheet.newChart(); 
chartBuilder.addRange(range).setChartType(Charts.ChartType.LINE).setOption('title', 'My Line Chart!'); 
sheet.insertChart(chartBuilder.build()); 
} 

Tôi đã thử sheet.getRange("A1:B6") là tốt.

Cột thứ nhất là ngày và cột thứ 2 là int. Các tiêu chuẩn Chèn một đồ thị GUI có thể sử dụng dữ liệu như là.

Có ai đã thành công với các lớp EmbeddedGraph mới không? cảm ơn

Trả lời

8

Sự cố không phải là phạm vi dữ liệu đầu vào, nhưng khi biểu đồ được đặt trong quá trình xây dựng. Nó đang cố gắng đặt biểu đồ lên trên cùng của dữ liệu trên trang. Bạn cần sử dụng trên số chartBuilder để biết vị trí biểu đồ sẽ đi đến đâu. Tôi tin rằng nó sẽ cố gắng để đặt nó ở hàng 1, cột 1 nếu bạn không chỉ định bất cứ điều gì, có nghĩa là nó có khả năng cố gắng ghi đè lên dữ liệu của bạn.

Hãy thử thay thế dòng cuối cùng của bạn với điều này

sheet.insertChart(chartBuilder.setPosition(7, 1, 1, 1).build()); 

setPosition thông số như sau: int Row, int Col, Row offset, Col bù đắp.

+0

Điều đó hoàn hảo! :) cảm ơn Serge – wild

+0

@ScottR - Tôi đã chấp thuận chỉnh sửa của bạn mặc dù tôi nghĩ rằng nó không thực sự cần thiết nhưng nếu bạn nghĩ rằng nó làm cho nó rõ ràng hơn thì tại sao không? Các liên kết đến doc là một suy nghĩ tốt, tôi nên đã làm nó ;-) –

+0

Tôi đã có cùng một vấn đề, nhưng tôi chỉ cần sao chép mã của bạn chính xác và có lỗi tương tự như OP vì dữ liệu của tôi là khác nhau. Khi tôi nhận ra vấn đề cơ bản là gì (dữ liệu ghi đè vị trí biểu đồ), tôi đã tìm ra nó. Do đó tôi nghĩ rằng chỉnh sửa câu trả lời có thể làm cho nó nhanh hơn cho những người khác như tôi! – ScottR

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