PINE LIBRARY
Atualizado matrixautotable

Library "matrixautotable"
Automatic Table from Matrixes with pseudo correction for na values and default color override for missing values. uses overloads in cases of cheap float only, with additional addon for strings next, then cell colors, then text colors, and tooltips last.. basic size and location are auto, include the template to speed this up...
TODO : make bools version
matrixtable(_floatmatrix, _stringmatrix, _bgcolormatrix, _textcolormatrix, _tooltipmatrix, _textSize, tableYpos, tableXpos) matrixtable
Parameters:
_floatmatrix: <matrix> float vals
_stringmatrix: <matrix> string
_bgcolormatrix: <matrix> color
_textcolormatrix: <matrix>color
_tooltipmatrix: <matrix> string
_textSize: int
tableYpos: string
tableXpos: string
matrixtable(_floatmatrix, _stringmatrix, _bgcolormatrix, _textcolormatrix, _textSize, tableYpos, tableXpos) matrixtable
Parameters:
_floatmatrix: <matrix> float vals
_stringmatrix: <matrix> string
_bgcolormatrix: <matrix> color
_textcolormatrix: <matrix>color
_textSize: int
tableYpos: string
tableXpos: string
matrixtable(_floatmatrix, _stringmatrix, _bgcolormatrix, _txtdefcol, _textSize, tableYpos, tableXpos) matrixtable
Parameters:
_floatmatrix: <matrix> float vals
_stringmatrix: <matrix> string
_bgcolormatrix: <matrix> color
_txtdefcol: color
_textSize: int
tableYpos: string
tableXpos: string
matrixtable(_floatmatrix, _stringmatrix, _txtdefcol, _bgdefcol, _textSize, tableYpos, tableXpos) matrixtable
Parameters:
_floatmatrix: <matrix> float vals
_stringmatrix: <matrix> string
_txtdefcol: color
_bgdefcol: color
_textSize: int
tableYpos: string
tableXpos: string
matrixtable(_floatmatrix, _txtdefcol, _bgdefcol, _textSize, tableYpos, tableXpos) matrixtable
Parameters:
_floatmatrix: <matrix> float vals
_txtdefcol: color
_bgdefcol: color
_textSize: int
tableYpos: string
tableXpos: string
Automatic Table from Matrixes with pseudo correction for na values and default color override for missing values. uses overloads in cases of cheap float only, with additional addon for strings next, then cell colors, then text colors, and tooltips last.. basic size and location are auto, include the template to speed this up...
TODO : make bools version
Pine Script®
var string group_table = ' Table'
var int _tblssizedemo = input.int ( 10 )
string tableYpos = input.string ( 'middle' , '↕' , inline = 'place' , group = group_table, options=['top', 'middle', 'bottom'])
string tableXpos = input.string ( 'center' , '↔' , inline = 'place' , group = group_table, options=['left', 'center', 'right'], tooltip='Position on the chart.')
int _textSize = input.int ( 1 , 'Table Text Size' , inline = 'place' , group = group_table)
var matrix<float> _floatmatrix = matrix.new<float> (_tblssizedemo, _tblssizedemo, 0 )
var matrix<string> _stringmatrix = matrix.new<string> (_tblssizedemo, _tblssizedemo, 'test' )
var matrix<color> _bgcolormatrix = matrix.new<color> (_tblssizedemo, _tblssizedemo, color.white )
var matrix<color> _textcolormatrix = matrix.new<color> (_tblssizedemo, _tblssizedemo, color.black )
var matrix<string> _tooltipmatrix = matrix.new<string> (_tblssizedemo, _tblssizedemo, 'tool' )
// basic table ready to go with the aboec matrixes (replace in your code)
// for demo purpose, random colors, random nums, random na vals
if barstate.islast
varip _xsize = matrix.rows (_floatmatrix) -1
varip _ysize = matrix.columns (_floatmatrix) -1
for _xis = 0 to _xsize -1 by 1
for _yis = 0 to _ysize -1 by 1
_randomr = int(math.random(50,250))
_randomg = int(math.random(50,250))
_randomb = int(math.random(50,250))
_randomt = int(math.random(10,90 ))
bgcolor = color.rgb(250 - _randomr, 250 - _randomg, 250 - _randomb, 100 - _randomt )
txtcolor = color.rgb(_randomr, _randomg, _randomb, _randomt )
matrix.set(_bgcolormatrix ,_yis,_xis, bgcolor )
matrix.set(_textcolormatrix ,_yis,_xis, txtcolor)
matrix.set(_floatmatrix ,_yis,_xis, _randomr)
// random na
_ymiss = math.floor(math.random(0, _yis))
_xmiss = math.floor(math.random(0, _xis))
matrix.set( _floatmatrix ,_ymiss, _xis, na)
matrix.set( _stringmatrix ,_ymiss, _xis, na)
matrix.set( _bgcolormatrix ,_ymiss, _xis, na)
matrix.set( _textcolormatrix ,_ymiss, _xis, na)
matrix.set( _tooltipmatrix ,_ymiss, _xis, na)
// import here
import kaigouthro/matrixautotable/1 as mtxtbl
// and render table..
mtxtbl.matrixtable(_floatmatrix, _stringmatrix, _bgcolormatrix, _textcolormatrix, _tooltipmatrix, _textSize ,tableYpos ,tableXpos)
var int _tblssizedemo = input.int ( 10 )
string tableYpos = input.string ( 'middle' , '↕' , inline = 'place' , group = group_table, options=['top', 'middle', 'bottom'])
string tableXpos = input.string ( 'center' , '↔' , inline = 'place' , group = group_table, options=['left', 'center', 'right'], tooltip='Position on the chart.')
int _textSize = input.int ( 1 , 'Table Text Size' , inline = 'place' , group = group_table)
var matrix<float> _floatmatrix = matrix.new<float> (_tblssizedemo, _tblssizedemo, 0 )
var matrix<string> _stringmatrix = matrix.new<string> (_tblssizedemo, _tblssizedemo, 'test' )
var matrix<color> _bgcolormatrix = matrix.new<color> (_tblssizedemo, _tblssizedemo, color.white )
var matrix<color> _textcolormatrix = matrix.new<color> (_tblssizedemo, _tblssizedemo, color.black )
var matrix<string> _tooltipmatrix = matrix.new<string> (_tblssizedemo, _tblssizedemo, 'tool' )
// basic table ready to go with the aboec matrixes (replace in your code)
// for demo purpose, random colors, random nums, random na vals
if barstate.islast
varip _xsize = matrix.rows (_floatmatrix) -1
varip _ysize = matrix.columns (_floatmatrix) -1
for _xis = 0 to _xsize -1 by 1
for _yis = 0 to _ysize -1 by 1
_randomr = int(math.random(50,250))
_randomg = int(math.random(50,250))
_randomb = int(math.random(50,250))
_randomt = int(math.random(10,90 ))
bgcolor = color.rgb(250 - _randomr, 250 - _randomg, 250 - _randomb, 100 - _randomt )
txtcolor = color.rgb(_randomr, _randomg, _randomb, _randomt )
matrix.set(_bgcolormatrix ,_yis,_xis, bgcolor )
matrix.set(_textcolormatrix ,_yis,_xis, txtcolor)
matrix.set(_floatmatrix ,_yis,_xis, _randomr)
// random na
_ymiss = math.floor(math.random(0, _yis))
_xmiss = math.floor(math.random(0, _xis))
matrix.set( _floatmatrix ,_ymiss, _xis, na)
matrix.set( _stringmatrix ,_ymiss, _xis, na)
matrix.set( _bgcolormatrix ,_ymiss, _xis, na)
matrix.set( _textcolormatrix ,_ymiss, _xis, na)
matrix.set( _tooltipmatrix ,_ymiss, _xis, na)
// import here
import kaigouthro/matrixautotable/1 as mtxtbl
// and render table..
mtxtbl.matrixtable(_floatmatrix, _stringmatrix, _bgcolormatrix, _textcolormatrix, _tooltipmatrix, _textSize ,tableYpos ,tableXpos)
matrixtable(_floatmatrix, _stringmatrix, _bgcolormatrix, _textcolormatrix, _tooltipmatrix, _textSize, tableYpos, tableXpos) matrixtable
Parameters:
_floatmatrix: <matrix> float vals
_stringmatrix: <matrix> string
_bgcolormatrix: <matrix> color
_textcolormatrix: <matrix>color
_tooltipmatrix: <matrix> string
_textSize: int
tableYpos: string
tableXpos: string
matrixtable(_floatmatrix, _stringmatrix, _bgcolormatrix, _textcolormatrix, _textSize, tableYpos, tableXpos) matrixtable
Parameters:
_floatmatrix: <matrix> float vals
_stringmatrix: <matrix> string
_bgcolormatrix: <matrix> color
_textcolormatrix: <matrix>color
_textSize: int
tableYpos: string
tableXpos: string
matrixtable(_floatmatrix, _stringmatrix, _bgcolormatrix, _txtdefcol, _textSize, tableYpos, tableXpos) matrixtable
Parameters:
_floatmatrix: <matrix> float vals
_stringmatrix: <matrix> string
_bgcolormatrix: <matrix> color
_txtdefcol: color
_textSize: int
tableYpos: string
tableXpos: string
matrixtable(_floatmatrix, _stringmatrix, _txtdefcol, _bgdefcol, _textSize, tableYpos, tableXpos) matrixtable
Parameters:
_floatmatrix: <matrix> float vals
_stringmatrix: <matrix> string
_txtdefcol: color
_bgdefcol: color
_textSize: int
tableYpos: string
tableXpos: string
matrixtable(_floatmatrix, _txtdefcol, _bgdefcol, _textSize, tableYpos, tableXpos) matrixtable
Parameters:
_floatmatrix: <matrix> float vals
_txtdefcol: color
_bgdefcol: color
_textSize: int
tableYpos: string
tableXpos: string
Notas de Lançamento
v2Updated:
matrixtable(_stringmatrix, _textSize, tableYpos, tableXpos) matrixtable
Parameters:
_stringmatrix: <matrix> float vals
_textSize: int
tableYpos: string
tableXpos: string
Notas de Lançamento
v3Fixed Error allowing for table resizing dynamically.
Notas de Lançamento
v4minor glitch, fixed table repaint issue
Notas de Lançamento
v5Updated Glitch problem on varying matrix sizes.
probably,..
Notas de Lançamento
v6ix! matrixes of differrent sizes will fill to match largest of them with na vals
Notas de Lançamento
v7Notas de Lançamento
v8quick lastconfirmedhistory availability and better color invert/default cols
Notas de Lançamento
v9Now can fit to screen area, change cell sizing, and returns table object for adjusting frame/border/bacckground
Added:
bgcolor(bgcolor)
Set background or Table
Parameters:
bgcolor: New Background Color
Returns: void
border()
frame()
Updated:
mtable()
autogenerate table from string matrix
matrixtable(_stringmatrix, _textSize, tableYpos, tableXpos)
matrixtable
Parameters:
_stringmatrix: <matrix> float vals
_textSize: int
tableYpos: string
tableXpos: string
Notas de Lançamento
v10oversight - table blanking when live and all mtx's even sized fixed.
Notas de Lançamento
v11added option for any type for two w/ or without background col
and any single type with plain no colors
Added:
anytwo()
anyone()
Notas de Lançamento
v12switch dat/titles in anytwo, hide NAN on string convert
Notas de Lançamento
v13added customizable w/h of cells and library imports updated to latest
Updated:
matrixtable(_stringmatrix, _textSize, tableYpos, tableXpos)
matrixtable
Parameters:
_stringmatrix: <matrix> float vals
_textSize: int
tableYpos: string
tableXpos: string
anytwo()
anyone()
Notas de Lançamento
v14minor addition, (total rewrite coming in future)
Updated:
anyone(_colormtx, _textSize, tableYpos, tableXpos, _fit, _shrink, _w, _h, _defaultbg, _defaultxt)
Parameters:
_colormtx
_textSize
tableYpos
tableXpos
_fit
_shrink
_w
_h
_defaultbg
_defaultxt
Biblioteca do Pine
No verdadeiro espirito do TradingView, o autor desse código Pine o publicou como uma biblioteca de código aberto, para que outros programadores Pine da nossa comunidade possam reusa-los. Parabéns ao autor! Você pode usar essa biblioteca privadamente ou em outras publicações de código aberto, mas a reutilização desse código em publicações é regida pelas Regras da Casa.
Aviso legal
As informações e publicações não devem ser e não constituem conselhos ou recomendações financeiras, de investimento, de negociação ou de qualquer outro tipo, fornecidas ou endossadas pela TradingView. Leia mais em Termos de uso.
Biblioteca do Pine
No verdadeiro espirito do TradingView, o autor desse código Pine o publicou como uma biblioteca de código aberto, para que outros programadores Pine da nossa comunidade possam reusa-los. Parabéns ao autor! Você pode usar essa biblioteca privadamente ou em outras publicações de código aberto, mas a reutilização desse código em publicações é regida pelas Regras da Casa.
Aviso legal
As informações e publicações não devem ser e não constituem conselhos ou recomendações financeiras, de investimento, de negociação ou de qualquer outro tipo, fornecidas ou endossadas pela TradingView. Leia mais em Termos de uso.