편집 요약 없음 |
편집 요약 없음 |
||
6번째 줄: | 6번째 줄: | ||
table_.width = 400 | table_.width = 400 | ||
table_.height = 300 | table_.height = 300 | ||
table_.data[1] = { | table_.data[1] = { | ||
26번째 줄: | 17번째 줄: | ||
} | } | ||
} | } | ||
table_.signals[1] = { | |||
name = "tooltip", | |||
value = {}, | |||
on = { | |||
{events = "rect:mouseover", update = "datum"}, | |||
{events = "rect:mouseout", update = "{}"} | |||
} | |||
} | |||
table_.scales[1] = { | table_.scales[1] = { | ||
name = "x", | name = "x", |
2021년 6월 6일 (일) 14:49 판
local p = {}
local table_ = {
scales = {}, axes = {}, marks = {}, signals = {}, data = {}
}
table_.width = 400
table_.height = 300
table_.data[1] = {
name = "table",
valus = {
{category = "USB 3.2 Gen 2x2", amount = 20},
{category = "USB 3.2 Gen 2(구 명칭 USB 3.1 Gen2, USB 3.1)", amount = 10},
{category = "USB 3.2 Gen 1(구 명칭 USB 3.1 Gen 1, USB 3.0) ", amount = 5},
{category = "USB 2.0", amount = 0.480},
{category = "USB 1.0" , amount = 0.12}
}
}
table_.signals[1] = {
name = "tooltip",
value = {},
on = {
{events = "rect:mouseover", update = "datum"},
{events = "rect:mouseout", update = "{}"}
}
}
table_.scales[1] = {
name = "x",
range = "width",
domain= {data= "table", field= "amount"},
round= true
}
table_.scales[2] = {
name = "y",
range = "height",
type = "ordinal",
domain= {data= "table", field = "category"},
padding= 0.3,
round= true
}
table_.axes[1] = {type= "x", scale = "x", title = "Gbps"}
table_.axes[2] = {type= "y", scale = "y"}
table_.marks[1] = {
type = "rect",
from= {data= "table"},
properties= {
enter= {
y= {scale= "y", field= "category"},
height= {scale= "y", band= true},
x= {scale= "x", value= 0},
x2= {scale= "x", field= "amount"}
},
update= {
fill= {value= "#4188F1"}
},
hover= {
strokeWidth= {value= 1},
stroke= {value= "#4188F1"},
fill= {value= "#F5F8FA"}
}
}
}
function p.jsonDecode()
return 0
--mw.text.jsonDecode()
end
function p.jsonEncode()
return mw.text.jsonEncode(table_)
end
function p.textDecode(frame)
return mw.text.decode(frame.args[1])
end
function p.textSplit(frame)
return mw.text.split(frame.args[1], frame.args[2], frame.args[3] or "")
end
local vertical_p = {}
function vertical_p.main(frame)
local str = ""
local i, j = 1, 1
while frame.args[i] do
str = str..[[<div class="vertical_p" style="float:left;">]]..frame.args[i]..[[</div>]]
i = i + 1
end
return str
end
--return vertical_p
return p