0% found this document useful (0 votes)
5 views

V. Profile

Pinescript V.Profile

Uploaded by

skvaid001
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views

V. Profile

Pinescript V.Profile

Uploaded by

skvaid001
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 11

//@version=4

//|—————————————————————————————————————————————————————————
//| Name: V-Profile
//| Version: 1.3
//| Date: 11.11.2020
//| Autor: Haft (by EulerMethod)
//|—————————————————————————————————————————————————————————
//| Tradingview: https://ru.tradingview.com/u/EulerMethod
//|—————————————————————————————————————————————————————————

//|
———————————————————————————————————————————————————————————————————————————————————
————————————————
//| Title | Variable | Type | Description |
Описание
//|
———————————————————————————————————————————————————————————————————————————————————
————————————————
//| On Δ | Off Σ | input_delta | boolean | Delta or Cumulative | Дельта
или Кумулятивный
//| POC | input_poc | boolean | Point of Control | Точка
контроля
//|——————————————————|———————————————|—————————|——————————————————————————|
———————————————————————————
//| Depth [20; 1k] | input_depth | integer | Depth of history | Глубина
истории
//| Range ± | input_range | boolean | Floating range |
Плавающий диапазон
//| ∟ % [0.1; 30] | input_persent | float | Floating range % |
Плавающий диапазон %
//| Scale Lg | input_log10 | boolean | Logarithmic scale |
Логарифмическая шкала
//|——————————————————|———————————————|—————————|——————————————————————————|
———————————————————————————
//| Amp [10; 100] | input_amp | integer | Amplitude of histogram |
Амплитуда гистограммы
//| Dot size | input_size | integer | Histogram dot size | Размер
точек гистограммы
//|——————————————————|———————————————|—————————|——————————————————————————|
———————————————————————————
//| Color: # | input_c_# | color | Palette | Палитра
//|
———————————————————————————————————————————————————————————————————————————————————
————————————————

study(
title = "V-Profile",
shorttitle = "V-Profile",
precision = 4,
overlay = true,
linktoseries = true,
max_bars_back = 1000
)
///////////////////////
// //
// INTERFACE //
// //
///////////////////////

//MOD'S
bool input_delta = input( title = "Delta", type = input.bool,
defval = false )
bool input_poc = input( title = "POC", type = input.bool,
defval = false )

//FRAME: Y
int input_depth = input( title = "Depth [10; 1k]", type = input.integer,
defval = 100, minval = 10, maxval = 1000 )
bool input_range = input( title = "Range ±", type = input.bool,
defval = false )
float input_persent = input( title = "∟ % [0.1; 50]", type = input.float,
defval = 5, minval = 0.1, maxval = 50, step = 0.1 )
bool input_log10 = input( title = "Scale Lg", type = input.bool,
defval = false )

//FRAME: X
int input_amp = input( title = "Amp [10; 100]", type = input.integer,
defval = 50, minval = 10, maxval = 100 )
int input_size = input( title = "Dot size", type = input.integer,
defval = 1, minval = 1, maxval = 3 )

//PALETTE
color input_c_info = input( title = "Color: Info", type = input.color,
defval = color.new(#FFFFFF, 0) ) //EM color White
color input_c_frame = input( title = "Color: Frame", type = input.color,
defval = color.new(#617793, 0) ) //EM color Palladium
color input_c_total = input( title = "Color: Σ", type = input.color,
defval = color.new(#00C3D3, 0) ) //EM color Palladium
color input_c_plus = input( title = "Color: Δ +", type = input.color,
defval = color.new(#1BDB00, 0) ) //EM color Green
color input_c_minus = input( title = "Color: Δ –", type = input.color,
defval = color.new(#E60000, 0) ) //EM color Blue

//////////////////
// //
// DATA //
// //
//////////////////

//// FRAME

//ath & atl


float FH = na, float FL = na, float rn = na

//true depth
int depth = input_depth

//first bar time


var int time_first = time

//// ROWS DATA

var R = array.new_float(50, 0) //Row (price)


var TV = array.new_float(50, 0) //Total: Value
var TA = array.new_int (50, 0) //Total: Amp
var TP = array.new_bool (50, false) //Total: Peak
float TM = 1 //Total: Max Value
var DV = array.new_float(50, 0) //Delta: Value
var DA = array.new_int (50, 0) //Delta: Amp
var DP = array.new_bool (50, false) //Delta: Peak

//// POC

float POC = na
float POC_DP = na
float POC_DN = na

//// INTERFACE

//text
string txt_top = input_range ? "+ " + tostring(input_persent, "0.0") + " %" : " " +
(input_amp < 20 ? "H ⇅ L" : "HIGH ⇅ LOW")
string txt_btm = "❮ " + tostring(input_depth)

//size
var dot_size = input_size == 1 ? size.tiny : input_size == 2 ? size.small :
size.normal

//invisible
var color c_opacity = color.new(color.white, 100)

////////////////////////
// //
// EXCEPTIONS //
// //
////////////////////////

bool exception_no_volume = nz(volume) == 0


bool exception_excess_depth = na(close[input_depth])
bool exception_bug_minute = timeframe.period == "1"

//// EXCEPTION HANDLING

//no volume
if exception_no_volume
txt_top := input_amp < 20 ? "🚫" : "🚫 NO VOLUME"
//depth correction
if exception_excess_depth and barstate.islast
for i = 2 to input_depth
if na(close[i])
depth := i, break
txt_btm := "❮ " + tostring(depth)

//////////////////////////
// //
// CALCULATIONS //
// //
//////////////////////////

//// FRAME

//ath & atl


if input_range
rn := hl2 * input_persent / 100
FH := hl2 + rn
FL := hl2 - rn
else
FH := highest(high, depth)
FL := lowest(low, depth)

//time_first bar time


if barstate.isfirst
time_first := time

//// FUNCTIONS

//row axis
float axis_step = (input_log10 ? log10(FH / FL) : FH - FL) / 50 //step (logarithmic
or linear)
Axis(i) => input_log10 ? pow(10, log10(FL) + i * axis_step) : FL + i * axis_step //
i steps

//drawing histogram
Histogram(i) =>
string T = (input_delta and array.get(DP, i)) or (not input_delta and
array.get(TP, i)) ? "◄ " : " "
if array.get(TV, i) > 0
int D_ = array.get(DA, i)
for j = 0 to array.get(TA, i)
T := T + (input_delta ? (D_ > j ? "•" : " ‧") : "•")
else
T := " ‧"
T

//row color
Color(m) => input_delta and array.get(DA, m) != 0 ? (array.get(DV, m) > 0 ?
input_c_plus : input_c_minus) : input_c_total

//// MAIN
if barstate.islast and not exception_no_volume

//rows conformity to prices


for i = 0 to 49
array.set(R, i, Axis(i + 0.5)) //offset row axis — row-hight / 2

//full depth
for i = 0 to depth - 1

int C = 0 //denominator
TS = array.new_float(50, 0) //divisible volumes
DS = array.new_float(50, 0) //divisible deltas

//set TS & DS and denominator


for j = 0 to 49
float R_ = array.get(R, j)
if high[i] > R_ and R_ > low[i]
C := C + 1
array.set(TS, j, nz(volume[i]))
if input_delta
array.set(DS, j, nz(volume[i]) * (close[i] > R_ ? 1 : -1))

if C != 0

//if High or Low out of range


float K = 1 //cutoff factor [0; 1]
if input_range and (high[i] > Axis(50) or low[i] < Axis(0))
K := C / ((high[i] - low[i]) / (input_log10 ? pow(10, axis_step) :
axis_step))

//rows value
for j = 0 to 49
array.set(TV, j, array.get(TV, j) + (array.get(TS, j) * K / C ))
if input_delta
array.set(DV, j, array.get(DV, j) + (array.get(DS, j) *
K / C ))

array.clear(TS), array.clear(DS)

TM := array.max(TV)

for i = 0 to 49

//amplitude
array.set(TA, i, floor(input_amp * array.get(TV, i) / TM))

if not input_delta
//peak 4 < X > 4
float T_ = array.get(TV, i)
bool p4 = i - 4 < 0 ? true : T_ > array.get(TV, i - 4)
bool p3 = i - 3 < 0 ? true : T_ > array.get(TV, i - 3)
bool p2 = i - 2 < 0 ? true : T_ > array.get(TV, i - 2)
bool p1 = i - 1 < 0 ? true : T_ > array.get(TV, i - 1)
bool n1 = i + 1 > 49 ? true : T_ > array.get(TV, i + 1)
bool n2 = i + 2 > 49 ? true : T_ > array.get(TV, i + 2)
bool n3 = i + 3 > 49 ? true : T_ > array.get(TV, i + 3)
bool n4 = i + 4 > 49 ? true : T_ > array.get(TV, i + 4)
array.set(TP, i, p4 and p3 and p2 and p1 and n1 and n2 and n3 and
n4)

else
//amplitude
array.set(DA, i, floor(array.get(TA, i) * abs(array.get(DV, i)) /
array.get(TV, i)))

//peak 4 < X > 4


float D_ = abs(array.get(DV, i))
bool p4 = i - 4 < 0 ? true : D_ > abs(array.get(DV, i - 4))
bool p3 = i - 3 < 0 ? true : D_ > abs(array.get(DV, i - 3))
bool p2 = i - 2 < 0 ? true : D_ > abs(array.get(DV, i - 2))
bool p1 = i - 1 < 0 ? true : D_ > abs(array.get(DV, i - 1))
bool n1 = i + 1 > 49 ? true : D_ > abs(array.get(DV, i + 1))
bool n2 = i + 2 > 49 ? true : D_ > abs(array.get(DV, i + 2))
bool n3 = i + 3 > 49 ? true : D_ > abs(array.get(DV, i + 3))
bool n4 = i + 4 > 49 ? true : D_ > abs(array.get(DV, i + 4))
array.set(DP, i, p4 and p3 and p2 and p1 and n1 and n2 and n3 and
n4)

//POC
if input_poc

float sum = 0, float mass = 0


for i = 0 to 49
float V_ = array.get(TV, i)
sum := sum + V_
mass := mass + V_ * array.get(R, i)

POC := nz(mass / sum, na)

if input_delta and not exception_bug_minute


float seller_sum = 0, float seller_mass = 0
float buyer_sum = 0, float buyer_mass = 0

for i = 0 to 49
float R_ = array.get(R, i)
float D_ = array.get(DV, i)
seller_sum := seller_sum + (D_ < 0 ? D_ : 0)
seller_mass := seller_mass + (D_ < 0 ? D_ * R_ : 0)
buyer_sum := buyer_sum + (D_ > 0 ? D_ : 0)
buyer_mass := buyer_mass + (D_ > 0 ? D_ * R_ : 0)

POC_DN := nz(seller_mass / seller_sum, na)


POC_DP := nz(buyer_mass / buyer_sum, na)

//////////////////////
// //
// BUILDING //
// //
//////////////////////

//// POC

var line line_POC_DN = line.new(bar_index, na, bar_index, na,


style=line.style_dashed, color=input_c_minus)
var line line_POC_DP = line.new(bar_index, na, bar_index, na,
style=line.style_dashed, color=input_c_plus)
var line line_POC = line.new(bar_index, na, bar_index, na,
style=line.style_dashed, color=input_c_info)

//// INTERFACE

var label label_top = label.new(bar_index, FH, text=txt_top,


style=label.style_label_lower_left, textcolor=input_c_info, color=c_opacity,
size=size.normal)
var label label_btm = label.new(bar_index, FL, text=txt_btm,
style=label.style_label_upper_left, textcolor=input_c_info, color=c_opacity,
size=size.normal)

// FRAME

var line line_FH = line.new(bar_index, FH, bar_index, FH, color=input_c_frame,


style=line.style_dashed)
var line line_FL = line.new(bar_index, FL, bar_index, FL, color=input_c_frame,
style=line.style_dashed)
var line line_FS = line.new(bar_index, FL, bar_index, FL, color=input_c_frame,
style=line.style_dashed)

//// HISTOGRAM

int r1 = time_close
float r2 = close
string r3 = ""
color r4 = input_c_total
var r5 = xloc.bar_time
var r6 = yloc.price
color r7 = c_opacity
var r8 = label.style_label_left
var r9 = dot_size

var label R01 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,


color=r7, style=r8, size=r9)
var label R02 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R03 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R04 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R05 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R06 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R07 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R08 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R09 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R10 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R11 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R12 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R13 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R14 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R15 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R16 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R17 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R18 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R19 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R20 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R21 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R22 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R23 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R24 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R25 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R26 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R27 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R28 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R29 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R30 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R31 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R32 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R33 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R34 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R35 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R36 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R37 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R38 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R39 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R40 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R41 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R42 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R43 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R44 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R45 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R46 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R47 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R48 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R49 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)
var label R50 = label.new(r1, r2, text=r3, textcolor=r4, xloc=r5, yloc=r6,
color=r7, style=r8, size=r9)

//// SHIFT & REFRECH

if barstate.islast

//Frame: limits
int time_start = max(time[depth - 1], time_first)
int time_finish = time_close

//// INTERFACE

label.set_xloc(label_top, time_finish, xloc.bar_time)


label.set_y(label_top, FH)

label.set_xloc(label_btm, time_finish, xloc.bar_time)


label.set_y(label_btm, FL)
label.set_text(label_btm, txt_btm)

//// POC

line.set_xloc(line_POC, time_start, time_finish, xloc.bar_time)


line.set_y1(line_POC, POC)
line.set_y2(line_POC, POC)

line.set_xloc(line_POC_DN, time_start, time_finish, xloc.bar_time)


line.set_y1(line_POC_DN, POC_DN)
line.set_y2(line_POC_DN, POC_DN)

line.set_xloc(line_POC_DP, time_start, time_finish, xloc.bar_time)


line.set_y1(line_POC_DP, POC_DP)
line.set_y2(line_POC_DP, POC_DP)

//// FRAME
line.set_xloc(line_FH, time_start, time_finish, xloc.bar_time)
line.set_y1(line_FH, FH)
line.set_y2(line_FH, FH)

line.set_xloc(line_FL, time_start, time_finish, xloc.bar_time)


line.set_y1(line_FL, FL)
line.set_y2(line_FL, FL)

line.set_xloc(line_FS, time_start, time_start, xloc.bar_time)


line.set_y1(line_FS, FH)
line.set_y2(line_FS, FL)

//// HISTOGRAM

label.set_x(R01, time_finish), label.set_y(R01, array.get(R, 0)),


label.set_text(R01, Histogram( 0)), label.set_textcolor(R01, Color( 0))
label.set_x(R02, time_finish), label.set_y(R02, array.get(R, 1)),
label.set_text(R02, Histogram( 1)), label.set_textcolor(R02, Color( 1))
label.set_x(R03, time_finish), label.set_y(R03, array.get(R, 2)),
label.set_text(R03, Histogram( 2)), label.set_textcolor(R03, Color( 2))
label.set_x(R04, time_finish), label.set_y(R04, array.get(R, 3)),
label.set_text(R04, Histogram( 3)), label.set_textcolor(R04, Color( 3))
label.set_x(R05, time_finish), label.set_y(R05, array.get(R, 4)),
label.set_text(R05, Histogram( 4)), label.set_textcolor(R05, Color( 4))
label.set_x(R06, time_finish), label.set_y(R06, array.get(R, 5)),
label.set_text(R06, Histogram( 5)), label.set_textcolor(R06, Color( 5))
label.set_x(R07, time_finish), label.set_y(R07, array.get(R, 6)),
label.set_text(R07, Histogram( 6)), label.set_textcolor(R07, Color( 6))
label.set_x(R08, time_finish), label.set_y(R08, array.get(R, 7)),
label.set_text(R08, Histogram( 7)), label.set_textcolor(R08, Color( 7))
label.set_x(R09, time_finish), label.set_y(R09, array.get(R, 8)),
label.set_text(R09, Histogram( 8)), label.set_textcolor(R09, Color( 8))
label.set_x(R10, time_finish), label.set_y(R10, array.get(R, 9)),
label.set_text(R10, Histogram( 9)), label.set_textcolor(R10, Color( 9))
label.set_x(R11, time_finish), label.set_y(R11, array.get(R, 10)),
label.set_text(R11, Histogram(10)), label.set_textcolor(R11, Color(10))
label.set_x(R12, time_finish), label.set_y(R12, array.get(R, 11)),
label.set_text(R12, Histogram(11)), label.set_textcolor(R12, Color(11))
label.set_x(R13, time_finish), label.set_y(R13, array.get(R, 12)),
label.set_text(R13, Histogram(12)), label.set_textcolor(R13, Color(12))
label.set_x(R14, time_finish), label.set_y(R14, array.get(R, 13)),
label.set_text(R14, Histogram(13)), label.set_textcolor(R14, Color(13))
label.set_x(R15, time_finish), label.set_y(R15, array.get(R, 14)),
label.set_text(R15, Histogram(14)), label.set_textcolor(R15, Color(14))
label.set_x(R16, time_finish), label.set_y(R16, array.get(R, 15)),
label.set_text(R16, Histogram(15)), label.set_textcolor(R16, Color(15))
label.set_x(R17, time_finish), label.set_y(R17, array.get(R, 16)),
label.set_text(R17, Histogram(16)), label.set_textcolor(R17, Color(16))
label.set_x(R18, time_finish), label.set_y(R18, array.get(R, 17)),
label.set_text(R18, Histogram(17)), label.set_textcolor(R18, Color(17))
label.set_x(R19, time_finish), label.set_y(R19, array.get(R, 18)),
label.set_text(R19, Histogram(18)), label.set_textcolor(R19, Color(18))
label.set_x(R20, time_finish), label.set_y(R20, array.get(R, 19)),
label.set_text(R20, Histogram(19)), label.set_textcolor(R20, Color(19))
label.set_x(R21, time_finish), label.set_y(R21, array.get(R, 20)),
label.set_text(R21, Histogram(20)), label.set_textcolor(R21, Color(20))
label.set_x(R22, time_finish), label.set_y(R22, array.get(R, 21)),
label.set_text(R22, Histogram(21)), label.set_textcolor(R22, Color(21))
label.set_x(R23, time_finish), label.set_y(R23, array.get(R, 22)),
label.set_text(R23, Histogram(22)), label.set_textcolor(R23, Color(22))
label.set_x(R24, time_finish), label.set_y(R24, array.get(R, 23)),
label.set_text(R24, Histogram(23)), label.set_textcolor(R24, Color(23))
label.set_x(R25, time_finish), label.set_y(R25, array.get(R, 24)),
label.set_text(R25, Histogram(24)), label.set_textcolor(R25, Color(24))
label.set_x(R26, time_finish), label.set_y(R26, array.get(R, 25)),
label.set_text(R26, Histogram(25)), label.set_textcolor(R26, Color(25))
label.set_x(R27, time_finish), label.set_y(R27, array.get(R, 26)),
label.set_text(R27, Histogram(26)), label.set_textcolor(R27, Color(26))
label.set_x(R28, time_finish), label.set_y(R28, array.get(R, 27)),
label.set_text(R28, Histogram(27)), label.set_textcolor(R28, Color(27))
label.set_x(R29, time_finish), label.set_y(R29, array.get(R, 28)),
label.set_text(R29, Histogram(28)), label.set_textcolor(R29, Color(28))
label.set_x(R30, time_finish), label.set_y(R30, array.get(R, 29)),
label.set_text(R30, Histogram(29)), label.set_textcolor(R30, Color(29))
label.set_x(R31, time_finish), label.set_y(R31, array.get(R, 30)),
label.set_text(R31, Histogram(30)), label.set_textcolor(R31, Color(30))
label.set_x(R32, time_finish), label.set_y(R32, array.get(R, 31)),
label.set_text(R32, Histogram(31)), label.set_textcolor(R32, Color(31))
label.set_x(R33, time_finish), label.set_y(R33, array.get(R, 32)),
label.set_text(R33, Histogram(32)), label.set_textcolor(R33, Color(32))
label.set_x(R34, time_finish), label.set_y(R34, array.get(R, 33)),
label.set_text(R34, Histogram(33)), label.set_textcolor(R34, Color(33))
label.set_x(R35, time_finish), label.set_y(R35, array.get(R, 34)),
label.set_text(R35, Histogram(34)), label.set_textcolor(R35, Color(34))
label.set_x(R36, time_finish), label.set_y(R36, array.get(R, 35)),
label.set_text(R36, Histogram(35)), label.set_textcolor(R36, Color(35))
label.set_x(R37, time_finish), label.set_y(R37, array.get(R, 36)),
label.set_text(R37, Histogram(36)), label.set_textcolor(R37, Color(36))
label.set_x(R38, time_finish), label.set_y(R38, array.get(R, 37)),
label.set_text(R38, Histogram(37)), label.set_textcolor(R38, Color(37))
label.set_x(R39, time_finish), label.set_y(R39, array.get(R, 38)),
label.set_text(R39, Histogram(38)), label.set_textcolor(R39, Color(38))
label.set_x(R40, time_finish), label.set_y(R40, array.get(R, 39)),
label.set_text(R40, Histogram(39)), label.set_textcolor(R40, Color(39))
label.set_x(R41, time_finish), label.set_y(R41, array.get(R, 40)),
label.set_text(R41, Histogram(40)), label.set_textcolor(R41, Color(40))
label.set_x(R42, time_finish), label.set_y(R42, array.get(R, 41)),
label.set_text(R42, Histogram(41)), label.set_textcolor(R42, Color(41))
label.set_x(R43, time_finish), label.set_y(R43, array.get(R, 42)),
label.set_text(R43, Histogram(42)), label.set_textcolor(R43, Color(42))
label.set_x(R44, time_finish), label.set_y(R44, array.get(R, 43)),
label.set_text(R44, Histogram(43)), label.set_textcolor(R44, Color(43))
label.set_x(R45, time_finish), label.set_y(R45, array.get(R, 44)),
label.set_text(R45, Histogram(44)), label.set_textcolor(R45, Color(44))
label.set_x(R46, time_finish), label.set_y(R46, array.get(R, 45)),
label.set_text(R46, Histogram(45)), label.set_textcolor(R46, Color(45))
label.set_x(R47, time_finish), label.set_y(R47, array.get(R, 46)),
label.set_text(R47, Histogram(46)), label.set_textcolor(R47, Color(46))
label.set_x(R48, time_finish), label.set_y(R48, array.get(R, 47)),
label.set_text(R48, Histogram(47)), label.set_textcolor(R48, Color(47))
label.set_x(R49, time_finish), label.set_y(R49, array.get(R, 48)),
label.set_text(R49, Histogram(48)), label.set_textcolor(R49, Color(48))
label.set_x(R50, time_finish), label.set_y(R50, array.get(R, 49)),
label.set_text(R50, Histogram(49)), label.set_textcolor(R50, Color(49))

You might also like