2017-07-05 44 views
7

Próbuję ustawić stałą minimalną wartość na wykresie utworzonym programowo w moim arkuszu kalkulacyjnym Google. Celem jest to, że chcę utworzyć kilka wykresów z tymi samymi ograniczeniami, mimo że ich dane są bardzo różne.Ustawienie programisty minimalnej wartości w arkuszu kalkulacyjnym Google

Dla celów tego przykładu, mam następujące dane w arkuszu kalkulacyjnym:

Date Number 
05.02.2017 125 
06.02.2017 150 
16.02.2017 21 
05.02.2018 -5.333333333 
06.02.2018 -57.33333333 
16.02.2018 -109.3333333 
05.02.2019 -161.3333333 

i następujący skrypt:

function update() { 
    var title = 'Last updated ' + new Date().toString(); 

    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var sheet = ss.getSheets()[0]; 

    var chart = sheet.newChart() 
    .setChartType(Charts.ChartType.AREA) 
    .addRange(sheet.getRange("A1:B8")) 
    .setPosition(5, 5, 0, 0) 
    .setOption('title', title) 
    .setOption('vAxis.minValue', -5000) 
    .setOption('vAxis.viewWindow.min', -5000) 
    .build(); 

    sheet.insertChart(chart); 
} 

... więc, innymi słowy,” m próbuje ustawić minimalną wartość, do -5000. Ustawienie vAxis.minValue i/lub vAxis.viewWindow.min nie wykonuje dokładnie nic. (Tak, wiem, że mój kod utworzy nowy za każdym razem, gdy wywoływana jest funkcja update(), ale nie o to tutaj chodzi.)

Istnieje opcja minimalnej/maksymalnej wartości, gdy wykres jest edytowany. Wartości są puste: enter image description here

Co mogę zrobić, aby zmienić te wartości programowo?

pełen link do arkusza tutaj: https://docs.google.com/spreadsheets/d/1dKBG8Nx5mypD2YAfOTCzo2cvIX6C7R18SCIsNB5FsT0/edit?usp=sharing

Odpowiedz

4

Aby ustawić minimalną wartość vAxis do -5000, skonfigurować opcję jako setOption("vAxes", {0: { viewWindow: { min: -5000} }})

function update() { 
     var title = 'Last updated ' + new Date().toString(); 

     var ss = SpreadsheetApp.getActiveSpreadsheet(); 
     var sheet = ss.getSheets()[0]; 

     var chart = sheet.newChart() 
     .setChartType(Charts.ChartType.AREA) 
     .addRange(sheet.getRange("A1:B8")) 
     .setPosition(5, 5, 0, 0) 
     .setOption('title', title) 
     .setOption("vAxes", {0: { viewWindow: { min: -5000} }}) 
     .build(); 

     sheet.insertChart(chart); 
    }