看別人翻譯的開發文檔:
開發文檔地址:https://zlq4863947.gitbooks.io/tradingview/
getMarks(symbolInfo, startDate, endDate, onDataCallback, resolution)
- symbolInfo:SymbolInfo 商品信息對象
- startDate: unix 時間戳, 最左邊請求的K線時間
- endDate: unix 時間戳, 最右邊請求的K線時間
- onDataCallback: function(標記數字marks)
- resolution: string
方法介紹:圖表庫調用這個函數來獲得可見的K線范圍的標記。 圖表預期每調用一次getMarks就會調用一次onDataCallback。
mark為具有以下屬性的對象:
- id: 唯一標識id 。當用戶點擊標記時,將傳遞給相應的回調:respective callback
- time: unix time, UTC
- color:red|green|blue|yellow|{ border: '#ff0000', background: '#00ff00' }
- text: 標記彈出式文字。 支持HTML
- label: 印在標記上的文字。單字符
- labelFontColor: label的文字顏色
- minSize: 標記的最小尺寸 (diameter, pixels)
每個K線允許幾個標記(現在最多為10個)。目前我測試的可以多於 10 個。不允許標記脫離K線。
Remark: 只有當您聲明您的后端是支持標記時才會調用這個函數。supporting marks.
使用時注意:
回調函數中的參數是一個列表(marks),列表中的每個元素是一個 字典(mark)
我的代碼栗子:

1 Datafeeds.Container.prototype.getMarks = function (symbolInfo, startDate, endDate, onDataCallback, resolution) { 2 console.log('endDate: ',endDate); 3 var marks = that.getMarks(); 4 setTimeout(function () { 5 onDataCallback(marks); 6 }, 0); 7 } 8 9 getMarks(){ 10 var that = this; 11 var id = 1; 12 var time = Date.parse(new Date())/1000; 13 var color = { border: '#103bff', background: '#ff00e9' }; 14 var text = '這是標記: '; 15 var label = 'S'; 16 var labelFontColor = '#ff8e53'; 17 var minSize = 5; 18 var marks = []; 19 for(var i=0;i<15;i++){ 20 var mark = {}; 21 mark.id = id++; 22 mark.time = time; 23 time -= 28800; 24 mark.color = color; 25 mark.text = text + (id-1); 26 mark.label = label; 27 mark.labelFontColor = labelFontColor; 28 mark.minSize = minSize; 29 marks.push(mark); 30 } 31 return marks; 32 }