Tree:樹圖
class pyecharts.charts.Tree
class Tree(
# 初始化配置項,參考 `global_options.InitOpts`
init_opts: opts.InitOpts = opts.InitOpts()
)
func pyecharts.charts.Tree.add
def add(
# 系列名稱,用于 tooltip 的顯示,legend 的圖例篩選。
series_name: str,
# 系列數(shù)據(jù)項
data: Sequence[Union[opts.TreeItem, dict]],
# 樹圖的布局,有 正交 和 徑向 兩種。這里的 正交布局 就是我們通常所說的水平 和 垂直 方向,
# 對應(yīng)的參數(shù)取值為 'orthogonal' 。而 徑向布局 是指以根節(jié)點(diǎn)為圓心,每一層節(jié)點(diǎn)為環(huán),
# 一層層向外發(fā)散繪制而成的布局,對應(yīng)的參數(shù)取值為 'radial'
layout: str = "orthogonal",
# 標(biāo)記的圖形。ECharts 提供的標(biāo)記類型包括 'emptyCircle', 'circle', 'rect', 'roundRect',
# 'triangle', 'diamond', 'pin', 'arrow', 'none'。
symbol: types.JSFunc = "emptyCircle",
# 標(biāo)記的大小,可以設(shè)置成諸如 10 這樣單一的數(shù)字,也可以用數(shù)組分開表示寬和高,
# 例如 [20, 10] 表示標(biāo)記寬為 20,高為 10。
symbol_size: types.Union[types.JSFunc, types.Numeric, types.Sequence] = 7,
# 樹圖中 正交布局 的方向,也就是說只有在 layout = 'orthogonal' 的時候,
# 該配置項才生效。對應(yīng)有 水平 方向的 從左到右,從右到左;以及垂直方向的從上到下,
# 從下到上。取值分別為 'LR' , 'RL', 'TB', 'BT'。注意,之前的配置項值 'horizontal'
# 等同于 'LR', 'vertical' 等同于 'TB'。
orient: str = "LR",
# tree組件離容器上側(cè)的距離。
# top 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比,
# 也可以是 'top', 'middle', 'bottom'。
# 如果 top 的值為'top', 'middle', 'bottom',組件會根據(jù)相應(yīng)的位置自動對齊。
pos_top: Optional[str] = None,
# tree 組件離容器左側(cè)的距離。
# left 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比,
# 也可以是 'left', 'center', 'right'。
# 如果 left 的值為'left', 'center', 'right',組件會根據(jù)相應(yīng)的位置自動對齊。
pos_left: Optional[str] = None,
# tree 組件離容器下側(cè)的距離。
# bottom 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比。
pos_bottom: Optional[str] = None,
# tree 組件離容器右側(cè)的距離。
# right 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比。
pos_right: Optional[str] = None,
# 折疊節(jié)點(diǎn)間隔,當(dāng)節(jié)點(diǎn)過多時可以解決節(jié)點(diǎn)顯示過雜間隔。
collapse_interval: Numeric = 0,
# 樹圖在 正交布局 下,邊的形狀。分別有曲線和折線兩種,對應(yīng)的取值是 curve 和 polyline.
# 注意:該配置項只在 正交布局 下有效,在經(jīng)向布局下的開發(fā)環(huán)境中會報錯。
edge_shape: str = "curve",
# 正交布局下當(dāng)邊的形狀是折線時,子樹中折線段分叉的位置。
# 這里的位置指的是分叉點(diǎn)與子樹父節(jié)點(diǎn)的距離占整個子樹高度的百分比。
# 默認(rèn)取值是 '50%',可以是 ['0', '100%'] 之間。
# 注意:該配置項只有在 edgeShape = 'curve' 時才有效。
edge_fork_position: str = "50%",
# 是否開啟鼠標(biāo)縮放和平移漫游。默認(rèn)不開啟。如果只想要開啟縮放或者平移。
# 可以設(shè)置成 'scale' 或者 'move'。設(shè)置成 true 為都開啟
is_roam: bool = False,
# 子樹折疊和展開的交互,默認(rèn)打開 。由于繪圖區(qū)域是有限的,而通常一個樹圖的節(jié)點(diǎn)可能會比較多,
# 這樣就會出現(xiàn)節(jié)點(diǎn)之間相互遮蓋的問題。為了避免這一問題,可以將暫時無關(guān)的子樹折疊收起,
# 等到需要時再將其展開。如上面徑向布局樹圖示例,節(jié)點(diǎn)中心用藍(lán)色填充的就是折疊收起的子樹,可以點(diǎn)擊將其展開。
# 注意:如果配置自定義的圖片作為節(jié)點(diǎn)的標(biāo)記,是無法通過填充色來區(qū)分當(dāng)前節(jié)點(diǎn)是否有折疊的子樹的。
# 而目前暫不支持,上傳兩張圖片分別表示節(jié)點(diǎn)折疊和展開兩種狀態(tài)。所以,如果想明確地顯示節(jié)點(diǎn)的兩種狀態(tài),
# 建議使用 ECharts 常規(guī)的標(biāo)記類型,如 'emptyCircle' 等。
is_expand_and_collapse: bool = True,
# 樹圖初始展開的層級(深度)。根節(jié)點(diǎn)是第 0 層,然后是第 1 層、第 2 層,... ,
# 直到葉子節(jié)點(diǎn)。該配置項主要和 折疊展開 交互一起使用,目的還是為了防止一次展示過多節(jié)點(diǎn),
# 節(jié)點(diǎn)之間發(fā)生遮蓋。如果設(shè)置為 -1 或者 null 或者 undefined,所有節(jié)點(diǎn)都將展開。
initial_tree_depth: Optional[Numeric] = None,
# 標(biāo)簽配置項,參考 `series_options.LabelOpts`
label_opts: Union[opts.LabelOpts, dict] = opts.LabelOpts(),
# 葉子節(jié)點(diǎn)標(biāo)簽配置項,參考 `series_options.LabelOpts`
leaves_label_opts: Union[opts.LabelOpts, dict] = opts.LabelOpts(),
# 提示框組件配置項,參考 `series_options.TooltipOpts`
tooltip_opts: Union[opts.TooltipOpts, dict, None] = None,
)
class pyecharts.options.TreeItem
class TreeItem(
# 樹節(jié)點(diǎn)的名稱,用來標(biāo)識每一個節(jié)點(diǎn)。
name: Optional[str] = None,
# 節(jié)點(diǎn)的值,在 tooltip 中顯示。
value: Optional[Numeric] = None,
# 該節(jié)點(diǎn)的樣式,參考 `series_options.LabelOpts`
label_opts: Optional[LabelOpts] = None,
# 子節(jié)點(diǎn),嵌套定義。
children: Optional[Sequence] = None,
)
class pyecharts.charts.TreeMap
class TreeMap(
# 初始化配置項,參考 `global_options.InitOpts`
init_opts: opts.InitOpts = opts.InitOpts()
)
class pyecharts.options.TreeMapBreadcrumbOpts
class TreeMapBreadcrumbOpts(
# 是否顯示面包屑。
is_show: bool = True,
# 組件離容器左側(cè)的距離。
# left 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比,也可以是 'left', 'center', 'right'。
# 如果 left 的值為'left', 'center', 'right',組件會根據(jù)相應(yīng)的位置自動對齊。
pos_left: Union[str, Numeric] = "center",
# 組件離容器右側(cè)的距離。
# right 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比。
# 默認(rèn)自適應(yīng)。
pos_right: Union[str, Numeric] = "auto",
# 組件離容器上側(cè)的距離。
# top 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比,也可以是 'top', 'middle', 'bottom'。
# 如果 top 的值為'top', 'middle', 'bottom',組件會根據(jù)相應(yīng)的位置自動對齊。
pos_top: Union[str, Numeric] = "auto",
# 組件離容器下側(cè)的距離。
# bottom 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比。
# 默認(rèn)自適應(yīng)。
pos_bottom: Union[str, Numeric] = 0,
# 面包屑的高度。
height: Numeric = 22,
# 當(dāng)面包屑沒有內(nèi)容時候,設(shè)個最小寬度。
empty_item_width: Numeric = 25,
# 圖形樣式。參考 `global_options.ItemStyleOpts`
item_opts: ItemStyleOpts = ItemStyleOpts(),
)
class pyecharts.options.TreeMapItemStyleOpts
class TreeMapItemStyleOpts(
# 矩形的顏色。
color: Optional[str] = None,
# 矩形顏色的透明度。取值范圍是 0 ~ 1 之間的浮點(diǎn)數(shù)。
color_alpha: Union[Numeric, Sequence] = None,
# 矩形顏色的飽和度。取值范圍是 0 ~ 1 之間的浮點(diǎn)數(shù)。
color_saturation: Union[Numeric, Sequence] = None,
# 矩形邊框 和 矩形間隔(gap)的顏色。
border_color: Optional[str] = None,
# 矩形邊框線寬。為 0 時無邊框。而矩形的內(nèi)部子矩形(子節(jié)點(diǎn))的間隔距離是由 gapWidth 指定的。
border_width: Numeric = 0,
# 矩形邊框的顏色的飽和度。取值范圍是 0 ~ 1 之間的浮點(diǎn)數(shù)。
border_color_saturation: Union[Numeric, Sequence] = None,
# 矩形內(nèi)部子矩形(子節(jié)點(diǎn))的間隔距離。
gap_width: Numeric = 0,
# 每個矩形的描邊顏色。
stroke_color: Optional[str] = None,
# 每個矩形的描邊寬度。
stroke_width: Optional[Numeric] = None,
)
class pyecharts.options.TreeMapLevelsOpts
class TreeMapLevelsOpts(
# 矩形顏色的透明度。取值范圍是 0 ~ 1 之間的浮點(diǎn)數(shù)。
color_alpha: Union[Numeric, Sequence] = None,
# 矩形顏色的飽和度。取值范圍是 0 ~ 1 之間的浮點(diǎn)數(shù)。
color_saturation: Union[Numeric, Sequence] = None,
# 表示同一層級節(jié)點(diǎn),在顏色列表中(參見 color 屬性)選擇時,按照什么來選擇??蛇x值:
# 'value' 將節(jié)點(diǎn)的值(即 series-treemap.data.value)映射到顏色列表中。這樣得到的顏色,反應(yīng)了節(jié)點(diǎn)值的大小。
# 'index' 將節(jié)點(diǎn)的 index(序號)映射到顏色列表中。即同一層級中,第一個節(jié)點(diǎn)取顏色列表中第一個顏色,第二個節(jié)點(diǎn)取第二個。
# 這樣得到的顏色,便于區(qū)分相鄰節(jié)點(diǎn)。
# 'id' 將節(jié)點(diǎn)的 id 映射到顏色列表中。
# id 是用戶指定的,這樣能夠使得,在 treemap 通過 setOption 變化數(shù)值時,同一 id 映射到同一顏色,保持一致性。
color_mapping_by: str = "index",
# 矩形樹圖的 Item 配置,參考 `class pyecharts.options.TreeMapItemStyleOpts`
treemap_itemstyle_opts: Union[TreeMapItemStyleOpts, dict, None] = None,
# 每個矩形中,文本標(biāo)簽的樣式,參考 `series_options.LabelOpts`
label_opts: Union[LabelOpts, dict, None] = None,
# 用于顯示矩形的父節(jié)點(diǎn)的標(biāo)簽。參考 `series_options.LabelOpts`
upper_label_opts: Union[LabelOpts, dict, None] = None,
)
func pyecharts.charts.TreeMap.add
def add(
# 系列名稱,用于 tooltip 的顯示,legend 的圖例篩選。
series_name: str,
# 系列數(shù)據(jù)項
data: Sequence[Union[opts.TreeItem, dict]],
# 是否選中圖例。
is_selected: bool = True,
# leaf_depth 表示『展示幾層』,層次更深的節(jié)點(diǎn)則被隱藏起來。
# 設(shè)置了 leafDepth 后,下鉆(drill down)功能開啟。drill down 功能即點(diǎn)擊后才展示子層級。
# 例如,leafDepth 設(shè)置為 1,表示展示一層節(jié)點(diǎn)。
leaf_depth: Optional[Numeric] = None,
# treemap 組件離容器左側(cè)的距離。
# left 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比,
# 也可以是 'left', 'center', 'right'。
# 如果 left 的值為'left', 'center', 'right',組件會根據(jù)相應(yīng)的位置自動對齊。
pos_left: Optional[str] = None,
# treemap 組件離容器右側(cè)的距離。
# right 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比。
pos_right: Optional[str] = None,
# treemap 組件離容器上側(cè)的距離。
# top 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比,
# 也可以是 'top', 'middle', 'bottom'。
# 如果 top 的值為'top', 'middle', 'bottom',組件會根據(jù)相應(yīng)的位置自動對齊。
pos_top: Optional[str] = None,
# treemap 組件離容器下側(cè)的距離。
# bottom 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比。
pos_bottom: Optional[str] = None,
# treemap 組件的寬度。
width: types.Union[str, types.Numeric] = "80%",
# treemap 組件的高度。
height: types.Union[str, types.Numeric] = "80%",
# 期望矩形長寬比率。布局計算時會盡量向這個比率靠近。
# 默認(rèn)為黃金比:0.5 * (1 + Math.sqrt(5))。
square_ratio: types.Optional[types.JSFunc] = None,
# 當(dāng)節(jié)點(diǎn)可以下鉆時的提示符。只能是字符。
drilldown_icon: str = "?",
# 是否開啟拖拽漫游(移動和縮放)。可取值有:
# false:關(guān)閉。
# 'scale' 或 'zoom':只能夠縮放。
# 'move' 或 'pan':只能夠平移。
# true:縮放和平移均可。
roam: types.Union[bool, str] = True,
# 點(diǎn)擊節(jié)點(diǎn)后的行為??扇≈禐? # false:節(jié)點(diǎn)點(diǎn)擊無反應(yīng)。
# 'zoomToNode':點(diǎn)擊節(jié)點(diǎn)后縮放到節(jié)點(diǎn)。
# 'link':如果節(jié)點(diǎn)數(shù)據(jù)中有 link 點(diǎn)擊節(jié)點(diǎn)后會進(jìn)行超鏈接跳轉(zhuǎn)。
node_click: types.Union[bool, str] = "zoomToNode",
# 點(diǎn)擊某個節(jié)點(diǎn),會自動放大那個節(jié)點(diǎn)到合適的比例(節(jié)點(diǎn)占可視區(qū)域的面積比例),這個配置項就是這個比例。
zoom_to_node_ratio: types.Numeric = 0.32 * 0.32,
# treemap 中采用『三級配置』:
#『每個節(jié)點(diǎn)』->『每個層級』->『每個系列』。
# 即我們可以對每個節(jié)點(diǎn)進(jìn)行配置,也可以對樹的每個層級進(jìn)行配置,也可以 series 上設(shè)置全局配置。節(jié)點(diǎn)上的設(shè)置,優(yōu)先級最高。
# 最常用的是『每個層級進(jìn)行配置』,levels 配置項就是每個層級的配置
levels: types.TreeMapLevel = None,
# 當(dāng)前層級的最小 value 值。如果不設(shè)置則自動統(tǒng)計。
visual_min: Optional[Numeric] = None,
# 當(dāng)前層級的最大 value 值。如果不設(shè)置則自動統(tǒng)計。
visual_max: Optional[Numeric] = None,
# 本系列默認(rèn)的 顏色透明度 選取范圍。數(shù)值范圍 0 ~ 1。
color_alpha: types.Union[types.Numeric, types.Sequence] = None,
# 本系列默認(rèn)的 顏色飽和度 選取范圍。數(shù)值范圍 0 ~ 1。
color_saturation: types.Union[types.Numeric, types.Sequence] = None,
# 表示同一層級節(jié)點(diǎn),在顏色列表中(參見 color 屬性)選擇時,按照什么來選擇??蛇x值:
# 'value' 將節(jié)點(diǎn)的值(即 series-treemap.data.value)映射到顏色列表中。這樣得到的顏色,反應(yīng)了節(jié)點(diǎn)值的大小。
# 'index' 將節(jié)點(diǎn)的 index(序號)映射到顏色列表中。即同一層級中,第一個節(jié)點(diǎn)取顏色列表中第一個顏色,第二個節(jié)點(diǎn)取第二個。
# 這樣得到的顏色,便于區(qū)分相鄰節(jié)點(diǎn)。
# 'id' 將節(jié)點(diǎn)的 id 映射到顏色列表中。
# id 是用戶指定的,這樣能夠使得,在 treemap 通過 setOption 變化數(shù)值時,同一 id 映射到同一顏色,保持一致性。
color_mapping_by: str = "index",
# 如果某個節(jié)點(diǎn)的矩形的面積,小于這個數(shù)值(單位:px平方),這個節(jié)點(diǎn)就不顯示。
# 如果不加這個限制,很小的節(jié)點(diǎn)會影響顯示效果。
# 關(guān)于視覺設(shè)置,詳見 series-treemap.levels。
visible_min: types.Numeric = 10,
# 如果某個節(jié)點(diǎn)的矩形面積,小于這個數(shù)值(單位:px平方),則不顯示這個節(jié)點(diǎn)的子節(jié)點(diǎn)。
# 這能夠在矩形面積不足夠大時候,隱藏節(jié)點(diǎn)的細(xì)節(jié)。當(dāng)用戶用鼠標(biāo)縮放節(jié)點(diǎn)時,如果面積大于此閾值,又會顯示子節(jié)點(diǎn)。
# 關(guān)于視覺設(shè)置,詳見 series-treemap.levels。
children_visible_min: types.Optional[types.Numeric] = None,
# 標(biāo)簽配置項,參考 `series_options.LabelOpts`
label_opts: Union[opts.LabelOpts, dict] = opts.LabelOpts(position="inside"),
# 父級標(biāo)簽配置項,參考 `series_options.LabelOpts`
upper_label_opts: types.Label = opts.LabelOpts(position="inside"),
# 提示框組件配置項,參考 `series_options.TooltipOpts`
tooltip_opts: Union[opts.TooltipOpts, dict, None] = None,
# 圖形樣式配置,參考 `global_options.ItemStyleOpts`
itemstyle_opts: types.ItemStyle = None,
# 面包屑控件配置,參考 `TreeMapBreadcrumbOpts`
breadcrumb_opts: types.TreeMapBreadcrumb = None,
)
更多建議: