pyecharts 基本圖表

2023-02-17 11:09 更新

Calendar:日歷圖

class pyecharts.charts.Calendar
class Calendar(
    # 初始化配置項(xiàng),參考 `global_options.InitOpts`
    init_opts: opts.InitOpts = opts.InitOpts()
)
func pyeachrts.charts.Calendar.add
def add(
    # 系列名稱,用于 tooltip 的顯示,legend 的圖例篩選。
    series_name: str,

    # 系列數(shù)(jù),格式為 [(date1, value1), (date2, value2), ...]
    yaxis_data: Sequence,

    # 是否選中圖例
    is_selected: bool = True,

    # 標(biāo)簽配置項(xiàng),參考 `series_options.LabelOpts`
    label_opts: Union[opts.LabelOpts, dict] = opts.LabelOpts(),

    # 日歷坐標(biāo)系組件配置項(xiàng),參考 `CalendarOpts`
    calendar_opts: Union[opts.CalendarOpts, dict, None] = None,

    # 提示框組件配置項(xiàng),參考 `series_options.TooltipOpts`
    tooltip_opts: Union[opts.TooltipOpts, dict, None] = None,

    # 圖元樣式配置項(xiàng),參考 `series_options.ItemStyleOpts`
    itemstyle_opts: Union[opts.ItemStyleOpts, dict, None] = None,
)

CalendarOpts:日歷坐標(biāo)系組件配置項(xiàng)

class pyecharts.options.CalendarOpts
class CalendarOpts(
    # calendar組件離容器左側(cè)的距離。
    # left 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比,
    # 也可以是 'left', 'center', 'right'。
    # 如果 left 的值為'left', 'center', 'right',組件會根據(jù)相應(yīng)的位置自動對齊。
    pos_left: Optional[str] = None,

    # calendar組件離容器上側(cè)的距離。
    # top 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比,
    # 也可以是 'top', 'middle', 'bottom'。
    # 如果 top 的值為'top', 'middle', 'bottom',組件會根據(jù)相應(yīng)的位置自動對齊。
    pos_top: Optional[str] = None,

    # calendar組件離容器右側(cè)的距離。
    # right 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比。
    # 默認(rèn)自適應(yīng)。
    pos_right: Optional[str] = None,

    # calendar組件離容器下側(cè)的距離。
    # bottom 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比。
    # 默認(rèn)自適應(yīng)。
    pos_bottom: Optional[str] = None,

    # 日歷坐標(biāo)的布局朝向??蛇x:
    # 'horizontal', 'vertical'
    orient: Optional[str] = None,
    # 必填,日歷坐標(biāo)的范圍 支持多種格式,使用示例:
    # 某一年 range: 2017
    # 某個月 range: '2017-02'
    # 某個區(qū)間 range: ['2017-01-02', '2017-02-23']
    # 注意 此寫法會識別為['2017-01-01', '2017-02-01']
    # range: ['2017-01', '2017-02']
    range_: Union[str, Sequence, int] = None,

    # 星期軸的樣式,參考 `series_options.LabelOpts`
    daylabel_opts: Union[LabelOpts, dict, None] = None,

    # 月份軸的樣式,參考 `series_options.LabelOpts`
    monthlabel_opts: Union[LabelOpts, dict, None] = None,

    # 年份的樣式,參考 `series_options.LabelOpts`
    yearlabel_opts: Union[LabelOpts, dict, None] = None,
)

Demo

gallery 示例

Funnel:漏斗圖

class pyecharts.charts.Funnel
class Funnel(
    # 初始化配置項(xiàng),參考 `global_options.InitOpts`
    init_opts: opts.InitOpts = opts.InitOpts()
)
func pyecharts.charts.Funnel.add
def add(
    # 系列名稱,用于 tooltip 的顯示,legend 的圖例篩選。
    series_name: str,

    # 系列數(shù)(jù)(xiàng),格式為 [(key1, value1), (key2, value2)]
    data_pair: Sequence,

    # 是否選中圖例
    is_selected: bool = True,

    # 系列 label 顏色
    color: Optional[str] = None,

    # 數(shù)(jù)排序, 可以取 'ascending','descending','none'(表示按 data 順序)
    sort_: str = "descending",

    # 數(shù)(jù)圖形間距
    gap: Numeric = 0,

    # 標(biāo)簽配置項(xiàng),參考 `series_options.LabelOpts`
    label_opts: Union[opts.LabelOpts, dict] = opts.LabelOpts(),

    # 提示框組件配置項(xiàng),參考 `series_options.TooltipOpts`
    tooltip_opts: Union[opts.TooltipOpts, dict, None] = None,

    # 圖元樣式配置項(xiàng),參考 `series_options.ItemStyleOpts`
    itemstyle_opts: Union[opts.ItemStyleOpts, dict, None] = None,
)

Demo

gallery 示例

Gauge:儀表盤

class pyecharts.charts.Gauge
class Gauge(
    # 初始化配置項(xiàng),參考 `global_options.InitOpts`
    init_opts: opts.InitOpts = opts.InitOpts()
)
func pyecharts.charts.Gauge.add
def add(
    # 系列名稱,用于 tooltip 的顯示,legend 的圖例篩選。
    series_name: str,

    # 系列數(shù)(jù)(xiàng),格式為 [(key1, value1), (key2, value2)]
    data_pair: Sequence,

    # 是否選中圖例
    is_selected: bool = True,

    # 最小的數(shù)(jù)值
    min_: Numeric = 0,

    # 最大的數(shù)(jù)值
    max_: Numeric = 100,

    # 儀表盤平均分割段數(shù)
    split_number: Numeric = 10,

    # 儀表盤半徑,可以是相對于容器高寬中較小的一項(xiàng)的一半的百分比,也可以是絕對的數(shù)值。
    radius: types.Union[types.Numeric, str] = "75%",

    # 儀表盤起始角度。圓心 正右手側(cè)0度,正上方為 90 度,正左手側(cè)180 度。
    start_angle: Numeric = 225,

    # 儀表盤結(jié)束角度。
    end_angle: Numeric = -45,

    # 儀表盤刻度是否是順時針增長。
    is_clock_wise: bool = True,

    # 輪盤內(nèi)(biāo)題文本項(xiàng)(biāo)簽配置項(xiàng),參考 `chart_options.GaugeTitleOpts`
    title_label_opts: types.GaugeTitle = opts.GaugeTitleOpts(),

    # 輪盤內(nèi)(shù)(jù)(xiàng)(biāo)簽配置項(xiàng),參考 `chart_options.GaugeDetailOpts`
    detail_label_opts: types.GaugeDetail = opts.GaugeDetailOpts(formatter="{value}%"),

    # 儀表盤指針配置項(xiàng)目,參考 `chart_options.GaugePointerOpts`
    pointer: types.GaugePointer = opts.GaugePointerOpts(),

    # 提示框組件配置項(xiàng),參考 `series_options.TooltipOpts`
    tooltip_opts: Union[opts.TooltipOpts, dict, None] = None,

    # 圖元樣式配置項(xiàng),參考 `series_options.ItemStyleOpts`
    itemstyle_opts: Union[opts.ItemStyleOpts, dict, None] = None,
)

GaugeTitleOpts:儀表盤數(shù)據(jù)標(biāo)題配置項(xiàng)

class GaugeTitleOpts(
)

GaugeDetailOpts:儀表盤數(shù)據(jù)內(nèi)容配置項(xiàng)

class GaugeDetailOpts(
    # 是否顯示詳情。
    is_show: bool = True,

    # 文字塊背景色。
    # 可以是直接的顏色值,例如:'#123234', 'red', 'rgba(0,23,11,0.3)'。
    background_color: str = "transparent",

    # 文字塊邊框?qū)挾取?    border_width: Numeric = 0,

    # 文字塊邊框顏色。
    border_color: str = "transparent",

    # 相對于儀表盤中心的偏移位置,數(shù)組第一項(xiàng)是水平方向的偏移,第二項(xiàng)是垂直方向的偏移。
    # 可以是絕對的數(shù)值,也可以是相對于儀表盤半徑的百分比。
    offset_center: Sequence = [0, "-40%"],

    # 格式化函數(shù)或者字符串
    formatter: Optional[JSFunc] = None,

    # 文字的顏色。
    color: str = "auto",

    # 文字字體的風(fēng)格??蛇x:'normal','italic','oblique'
    font_style: str = "normal",

    # 文字字體的粗細(xì)??蛇x:'normal','bold','bolder', 'lighter', 100 | 200 | 300 | 400...
    font_weight: str = "normal",

    # 文字的字體系列。還可以是 'serif' , 'monospace', 'Arial', 'Courier New', 'Microsoft YaHei', ...
    font_family: str = "sans-serif",

    # 文字的字體大小
    font_size: Numeric = 15,

    # 文字塊的圓角。
    border_radius: Numeric = 0,

    # 文字塊的內(nèi)邊距。例如:
    # padding: [3, 4, 5, 6]:表示 [上, 右, 下, 左] 的邊距。
    # padding: 4:表示 padding: [4, 4, 4, 4]。
    # padding: [3, 4]:表示 padding: [3, 4, 3, 4]。
    # 注意,文字塊的 width 和 height 指定的是內(nèi)容高寬,不包含 padding。
    padding: Numeric = 0,

    # 文字塊的背景陰影顏色。
    shadow_color: Optional[str] = "transparent",

    # 文字塊的背景陰影長度。
    shadow_blur: Optional[Numeric] = 0,

    # 文字塊的背景陰影 X 偏移。
    shadow_offset_x: Numeric = 0,

    # 文字塊的背景陰影 Y 偏移。
    shadow_offset_y: Numeric = 0,
)

GaugePointerOpts:儀表盤指針配置項(xiàng)

class GaugePointerOpts(
    # 是否顯示指針。
    is_show: bool = True,

    # 指針長度,可以是絕對數(shù)值,也可以是相對于半徑的半分比。
    length: Union[str, Numeric] = "80%",

    # 指針寬度。
    width: Numeric = 8,
)

Demo

gallery 示例

Graph:關(guān)系圖

class pyecharts.charts.Graph
class Graph(
    # 初始化配置項(xiàng),參考 `global_options.InitOpts`
    init_opts: opts.InitOpts = opts.InitOpts()
)
class pyecharts.charts.Graph.add
def add(
    # 系列名稱,用于 tooltip 的顯示,legend 的圖例篩選。
    series_name: str,

    # 關(guān)系圖節(jié)(diǎn)(shù)(jù)(xiàng)列表,參考 `opts.GraphNode`
    nodes: Sequence[Union[opts.GraphNode, dict]],

    # 關(guān)系圖節(jié)(diǎn)間關(guān)系數(shù)(jù)(xiàng)列表,參考 `opts.GraphLink`
    links: Sequence[Union[opts.GraphLink, dict]],

    # 關(guān)系圖節(jié)(diǎn)分類的類目列表,參考 `opts.GraphCategory`
    categories: Union[Sequence[Union[opts.GraphCategory, dict]], None] = None,

    # 是否選中圖例。
    is_selected: bool = True,

    # 是否在鼠標(biāo)移到節(jié)(diǎn)上的時候突出顯示節(jié)(diǎn)以及節(jié)(diǎn)的邊和鄰接節(jié)(diǎn)。
    is_focusnode: bool = True,

    # 是否開啟鼠標(biāo)縮放和平移漫游。
    is_roam: bool = True,

    # 節(jié)(diǎn)是否可拖拽,只在使用力引導(dǎo)布局的時候有用。
    is_draggable: bool = False,

    # 是否旋轉(zhuǎn)(biāo)簽,默認(rèn)不旋轉(zhuǎn)。
    is_rotate_label: bool = False,

    # 圖的布局。可選:
    # 'none' 不采用任何布局,使用節(jié)(diǎn)中提供的 x, y 作為節(jié)(diǎn)的位置。
    # 'circular' 采用環(huán)形布局。
    # 'force' 采用力引導(dǎo)布局。
    layout: str = "force",

    # 關(guān)系圖節(jié)(diǎn)(biāo)記的圖形。
    # ECharts 提供的標(biāo)記類型包括 'circle', 'rect', 'roundRect', 'triangle', 
    # 'diamond', 'pin', 'arrow', 'none'
    # 可以通過 'image://url'(shè)置為圖片,其中 URL 為圖片的鏈接,或者 dataURI。
    symbol: Optional[str] = None,

    # 關(guān)系圖節(jié)(diǎn)(biāo)記的大小
    # 可以設(shè)置成諸如 10 這樣單一的數(shù)字
    # 也可以用數(shù)組分開表示寬和高,例如 [20, 10] 表示標(biāo)記寬為20,高為10。
    symbol_size: types.Numeric = 10,

    # 邊的兩個節(jié)(diǎn)之間的距離,這個距離也會受 repulsion。
    # 支持設(shè)置成數(shù)組表達(dá)邊長的范圍,此時不同大小的值會線性映射到不同的長度。值越小則長度越長。
    edge_length: Numeric = 50,

    # 節(jié)(diǎn)受到的向中心的引力因子。該值越大節(jié)(diǎn)越往中心點(diǎn)靠攏。
    gravity: Numeric = 0.2,

    # 節(jié)(diǎn)之間的斥力因子。
    # 支持設(shè)置成數(shù)組表達(dá)斥力的范圍,此時不同大小的值會線性映射到不同的斥力。值越大則斥力越大
    repulsion: Numeric = 50,

     # Graph 圖節(jié)(diǎn)邊的 Label 配置(即在邊上顯示數(shù)(jù)或標(biāo)注的配置)
    edge_label: types.Label = None,

    # 邊兩端的標(biāo)記類型,可以是一個數(shù)組分別指定兩端,也可以是單個統(tǒng)一指定。
    # 默認(rèn)不顯示標(biāo)記,常見的可以設(shè)置為箭頭,如下:edgeSymbol: ['circle', 'arrow']
    edge_symbol: Optional[str] = None,

    # 邊兩端的標(biāo)記大小,可以是一個數(shù)組分別指定兩端,也可以是單個統(tǒng)一指定。
    edge_symbol_size: Numeric = 10,

    # 標(biāo)簽配置項(xiàng),參考 `series_options.LabelOpts`
    label_opts: Union[opts.LabelOpts, dict] = opts.LabelOpts(),

    # 關(guān)系邊的公用線條樣式。
    linestyle_opts: Union[opts.LineStyleOpts, dict] = opts.LineStyleOpts(),

    # 提示框組件配置項(xiàng),參考 `series_options.TooltipOpts`
    tooltip_opts: Union[opts.TooltipOpts, dict, None] = None,

    # 圖元樣式配置項(xiàng),參考 `series_options.ItemStyleOpts`
    itemstyle_opts: Union[opts.ItemStyleOpts, dict, None] = None,
)

GraphNode:關(guān)系圖的節(jié)點(diǎn)數(shù)據(jù)項(xiàng)

class pyecharts.options.GraphNode
class GraphNode(
    # 數(shù)(jù)(xiàng)名稱。
    name: Optional[str] = None,

    # 節(jié)(diǎn)的初始 x 值。在不指定的時候需要指明layout屬性選擇布局方式。
    x: Optional[Numeric] = None,

    # 節(jié)(diǎn)的初始 y 值。在不指定的時候需要指明layout屬性選擇布局方式。
    y: Optional[Numeric] = None,

    # 節(jié)(diǎn)在力引導(dǎo)布局中是否固定。
    is_fixed: bool = False,

    # 數(shù)(jù)(xiàng)值。
    value: Union[str, Sequence, None] = None,

    # 數(shù)(jù)(xiàng)所在類目的 index。
    category: Optional[int] = None,

    # 該類目節(jié)(diǎn)(biāo)記的圖形。
    # ECharts 提供的標(biāo)記類型包括 'circle', 'rect', 'roundRect', 'triangle', 
    # 'diamond', 'pin', 'arrow', 'none'
    # 可以通過 'image://url'(shè)置為圖片,其中 URL 為圖片的鏈接,或者 dataURI。
    symbol: Optional[str] = None,

    # 該類目節(jié)(diǎn)(biāo)記的大小,可以設(shè)置成諸如 10 這樣單一的數(shù)字,也可以用數(shù)組分開表示寬和高,
    # 例如 [20, 10] 表示標(biāo)記寬為 20,高為 10。
    symbol_size: Union[Numeric, Sequence, None] = None,

    # 標(biāo)簽配置項(xiàng),參考 `series_options.LabelOpts`
    label_opts: Optional[LabelOpts] = None,
)

GraphLink:節(jié)點(diǎn)間的關(guān)系數(shù)據(jù)

class pyecharts.options.GraphLink
class GraphLink(
    # 邊的源節(jié)(diǎn)名稱的字符串,也支持使用數(shù)字表示源節(jié)(diǎn)的索引。
    source: Union[str, int, None] = None,

    # 邊的目標(biāo)(jié)(diǎn)名稱的字符串,也支持使用數(shù)字表示源節(jié)(diǎn)的索引。
    target: Union[str, int, None] = None,

    # 邊的數(shù)值,可以在力引導(dǎo)布局中用于映射到邊的長度。
    value: Optional[Numeric] = None,

    # 邊兩端的標(biāo)記類型,可以是一個數(shù)組分別指定兩端,也可以是單個統(tǒng)一指定。
    symbol: Union[str, Sequence, None] = None,

    # 邊兩端的標(biāo)記大小,可以是一個數(shù)組分別指定兩端,也可以是單個統(tǒng)一指定。
    symbol_size: Union[Numeric, Sequence, None] = None,

    # 關(guān)系邊的線條樣式,參考 `series_options.LineStyleOpts`
    linestyle_opts: Optional[LineStyleOpts] = None,

    # 標(biāo)簽樣式,參考 `series_options.LabelOpts`
    label_opts: Optional[LabelOpts] = None,
)

GraphCategory:節(jié)點(diǎn)分類的類目

class pyecharts.options.GraphCategory
class GraphCategory(
    # 類目名稱,用于和 legend 對應(yīng)以及格式化 tooltip 的內(nèi)容。
    name: Optional[str] = None,

    # 該類目節(jié)(diǎn)(biāo)記的圖形。
    # ECharts 提供的標(biāo)記類型包括 'circle', 'rect', 'roundRect', 'triangle', 
    # 'diamond', 'pin', 'arrow', 'none'
    # 可以通過 'image://url'(shè)置為圖片,其中 URL 為圖片的鏈接,或者 dataURI。
    symbol: Optional[str] = None,

    # 該類目節(jié)(diǎn)(biāo)記的大小,可以設(shè)置成諸如 10 這樣單一的數(shù)字,也可以用數(shù)組分開表示寬和高,
    # 例如 [20, 10] 表示標(biāo)記寬為 20,高為 10。
    symbol_size: Union[Numeric, Sequence, None] = None,

    # # 標(biāo)簽樣式,參考 `series_options.LabelOpts`
    label_opts: Optional[LabelOpts] = None,
)

Demo

gallery 示例

Liquid:水球圖

class pyecharts.charts.Liquid
class Liquid(
    # 初始化配置項(xiàng),參考 `global_options.InitOpts`
    init_opts: opts.InitOpts = opts.InitOpts()
)
func pyecharts.charts.Liquid.add
def add(
    # 系列名稱,用于 tooltip 的顯示,legend 的圖例篩選。
    series_name: str,

    # 系列數(shù)(jù),格式為 [value1, value2, ....]
    data: Sequence,

    # 水球外形,有' circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow' 可選。
    # 默認(rèn) 'circle'。也可以為自定義的 SVG 路徑。
    shape: str = "circle",

    # 波浪顏色。
    color: Optional[Sequence[str]] = None,

    # 背景顏色
    background_color: types.Union[str, dict, None] = None,

    # 是否顯示波浪動畫。
    is_animation: bool = True,

    # 是否顯示邊框。
    is_outline_show: bool = True,

    # 外沿邊框?qū)挾?    outline_border_distance: types.Numeric = 8,

    # 外沿樣式
    outline_itemstyle_opts: types.ItemStyle = None,

    # 標(biāo)簽配置項(xiàng),參考 `series_options.LabelOpts`
    label_opts: Union[opts.LabelOpts, dict] = opts.LabelOpts(font_size=50, position="inside"),

    # 提示框組件配置項(xiàng),參考 `series_options.TooltipOpts`
    tooltip_opts: Union[opts.TooltipOpts, dict, None] = None,
)

Demo

gallery 示例

Parallel:平行坐標(biāo)系

class pyecharts.charts.Parallel
class Parallel(
    # 初始化配置項(xiàng),參考 `global_options.InitOpts`
    init_opts: opts.InitOpts = opts.InitOpts()
)
func pyecharts.charts.Parallel.add_schema
def add_schema(
    schema: Sequence[Union[opts.ParallelAxisOpts, dict]],
    parallel_opts: Union[opts.ParallelOpts, dict, None] = None,
)
func pyecharts.charts.Parallel.add
def add(
    # 系列名稱,用于 tooltip 的顯示,legend 的圖例篩選。
    series_name: str,

    # 系列數(shù)據(jù)
    data: types.Sequence[types.Union[opts.ParallelItem, dict]],

    # 是否選中圖例。
    is_selected: bool = True,

    # 是否平滑曲線
    is_smooth: bool = False,

    # 線條樣式,參考 `series_options.LineStyleOpts`
    linestyle_opts: Union[opts.LineStyleOpts, dict] = opts.LineStyleOpts(),

    # 提示框組件配置項(xiàng),參考 `series_options.TooltipOpts`
    tooltip_opts: Union[opts.TooltipOpts, dict, None] = None,

    # 圖元樣式配置項(xiàng),參考 `series_options.ItemStyleOpts`
    itemstyle_opts: Union[opts.ItemStyleOpts, dict, None] = None,
)

ParallelOpts:平行坐標(biāo)系配置項(xiàng)

class pyecharts.options.ParallelOpts
class ParallelOpts(
    # parallel 組件離容器左側(cè)的距離。
    # left 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比,
    # 也可以是 'left', 'center', 'right'。
    # 如果 left 的值為'left', 'center', 'right',組件會根據(jù)相應(yīng)的位置自動對齊。
    pos_left: str = "5%",

    # parallel 組件離容器右側(cè)的距離。
    # right 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比。
    pos_right: str = "13%",

    # parallel 組件離容器下側(cè)的距離。
    # bottom 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比。
    pos_bottom: str = "10%",

    # parallel 組件離容器上側(cè)的距離。
    # top 的值可以是像 20 這樣的具體像素值,可以是像 '20%' 這樣相對于容器高寬的百分比,
    # 也可以是 'top', 'middle', 'bottom'。
    # 如果 top 的值為'top', 'middle', 'bottom',組件會根據(jù)相應(yīng)的位置自動對齊。
    pos_top: str = "20%",

    # 布局方式,可選值為:
    # 'horizontal':水平排布各個坐標(biāo)軸。
    # 'vertical':豎直排布各個坐標(biāo)軸。
    layout: Optional[str] = None,
)

ParallelAxisOpts:平行坐標(biāo)系軸配置項(xiàng)

class pyecharts.options.ParallelAxisOpts
class ParallelAxisOpts(
    # 坐標(biāo)軸的維度序號。
    dim: Numeric,

    # 坐標(biāo)軸名稱。
    name: str,

    # 坐標(biāo)軸數(shù)(jù)(xiàng)
    data: Sequence = None,

    # 坐標(biāo)軸類型??蛇x:
    # 'value': 數(shù)值軸,適用于連續(xù)(shù)(jù)。
    # 'category': 類目軸,適用于離散的類目數(shù)(jù),為該類型時必須通過 data 設(shè)置類目數(shù)(jù)。
    # 'time': 時間軸,適用于連續(xù)的時序數(shù)(jù),與數(shù)值軸相比時間軸帶有時間的格式化,在刻度計算上也有所不同
    # 例如會根據(jù)跨度的范圍來決定使用月,星期,日還是小時范圍的刻度。
    # 'log' 對數(shù)軸。適用于對數(shù)(shù)(jù)。
    type_: Optional[str] = None,

    # 坐標(biāo)軸刻度最小值。
    # 可以設(shè)置成特殊值 'dataMin',此時取數(shù)(jù)在該軸上的最小值作為最小刻度。
    # 不設(shè)置時會自動計算最小值保證坐標(biāo)軸刻度的均勻分布。
    # 在類目軸中,也可以設(shè)置為類目的序數(shù)(如類目軸 data: ['類A', '類B', '類C'] 中,序數(shù) 2 表示 '類C'
    # 也可以設(shè)置為負(fù)(shù),如 -3)。
    min_: Union[str, Numeric, None] = None,

    # 坐標(biāo)軸刻度最大值。
    # 可以設(shè)置成特殊值 'dataMax',此時取數(shù)(jù)在該軸上的最大值作為最大刻度。
    # 不設(shè)置時會自動計算最大值保證坐標(biāo)軸刻度的均勻分布。
    # 在類目軸中,也可以設(shè)置為類目的序數(shù)(如類目軸 data: ['類A', '類B', '類C'] 中,序數(shù) 2 表示 '類C'
    # 也可以設(shè)置為負(fù)(shù),如 -3)。
    max_: Union[str, Numeric, None] = None,

    # 只在數(shù)值軸中(type: 'value')有效。
    # 是否是脫離 0 值比例。設(shè)置成 true 后坐標(biāo)刻度不會強(qiáng)制包含零刻度。在雙數(shù)值軸的散點(diǎn)圖中比較有用。
    # 在設(shè)置 min 和 max 之后該配置項(xiàng)無效。
    is_scale: bool = False,
)

ParallelItem:平行坐標(biāo)系數(shù)據(jù)項(xiàng)

class ParallelItem(
    # 數(shù)(jù)(xiàng)名稱。
    name: Optional[str] = None,

    # 數(shù)(jù)(xiàng)值。
    value: Optional[Sequence] = None,

    # 線條樣式。
    linestyle_opts: Union[LineStyleOpts, dict, None] = None,

    # 線的顏色。
    color: Union[str, dict] = "#000",

    # 線寬。
    width: Numeric = 2,

    # 線的類型??蛇x'solid''dashed','dotted'
    type_: str = "solid",

    # 圖形透明度。支持從 01 的數(shù)字,為 0 時不繪制該圖形。
    opacity: Numeric = 0.45,
)

Demo

gallery 示例

Pie:餅圖

class pyecharts.charts.Pie
class Pie(
    # 初始化配置項(xiàng),參考 `global_options.InitOpts`
    init_opts: opts.InitOpts = opts.InitOpts()
)
func pyecharts.charts.Pie.add
def add(
    # 系列名稱,用于 tooltip 的顯示,legend 的圖例篩選。
    series_name: str,

    # 系列數(shù)據(jù)項(xiàng),格式為 [(key1, value1), (key2, value2)]
    data_pair: types.Sequence[types.Union[types.Sequence, opts.PieItem, dict]],

    # 系列 label 顏色
    color: Optional[str] = None,

    # 餅圖的半徑,數(shù)組的第一項(xiàng)是內(nèi)半徑,第二項(xiàng)是外半徑
    # 默認(rèn)設(shè)置成百分比,相對于容器高寬中較小的一項(xiàng)的一半
    radius: Optional[Sequence] = None,

    # 餅圖的中心(圓心)坐標(biāo),數(shù)組的第一項(xiàng)是橫坐標(biāo),第二項(xiàng)是縱坐標(biāo)
    # 默認(rèn)設(shè)置成百分比,設(shè)置成百分比時第一項(xiàng)是相對于容器寬度,第二項(xiàng)是相對于容器高度
    center: Optional[Sequence] = None,

    # 是否展示成南丁格爾圖,通過半徑區(qū)分?jǐn)?shù)據(jù)大小,有'radius'和'area'兩種模式。
    # radius:扇區(qū)圓心角展現(xiàn)數(shù)據(jù)的百分比,半徑展現(xiàn)數(shù)據(jù)的大小
    # area:所有扇區(qū)圓心角相同,僅通過半徑展現(xiàn)數(shù)據(jù)大小
    rosetype: Optional[str] = None,

    # 餅圖的扇區(qū)是否是順時針排布。
    is_clockwise: bool = True,

    # 標(biāo)簽配置項(xiàng),參考 `series_options.LabelOpts`
    label_opts: Union[opts.LabelOpts, dict] = opts.LabelOpts(),

    # 提示框組件配置項(xiàng),參考 `series_options.TooltipOpts`
    tooltip_opts: Union[opts.TooltipOpts, dict, None] = None,

    # 圖元樣式配置項(xiàng),參考 `series_options.ItemStyleOpts`
    itemstyle_opts: Union[opts.ItemStyleOpts, dict, None] = None,

    # 可以定義 data 的哪個維度被編碼成什么。
    encode: types.Union[types.JSFunc, dict, None] = None,
)

PieItem:餅圖數(shù)據(jù)項(xiàng)

class PieItem(
    # 數(shù)(jù)(xiàng)名稱。
    name: Optional[str] = None,

    # 數(shù)(jù)值。
    value: Optional[Numeric] = None,

    # 該數(shù)(jù)(xiàng)是否被選中。
    is_selected: bool = False,

    # 標(biāo)簽配置項(xiàng),參考 `series_options.LabelOpts`
    label_opts: Union[LabelOpts, dict, None] = None,

    # 圖元樣式配置項(xiàng),參考 `series_options.ItemStyleOpts`
    itemstyle_opts: Union[ItemStyleOpts, dict, None] = None,

    # 提示框組件配置項(xiàng),參考 `series_options.TooltipOpts`
    tooltip_opts: Union[TooltipOpts, dict, None] = None,
)

PieLabelLineOpts: 餅圖標(biāo)簽的視覺引導(dǎo)線樣式

class PieLabelLineOpts(
    # 是否顯示視覺引導(dǎo)線。
    is_show: bool = True,

    # 視覺引導(dǎo)線第一段的長度。
    length: Numeric = None,

    # 視覺引導(dǎo)(xiàng)第二段的長度。
    length_2: Numeric = None,

    # 是否平滑視覺引導(dǎo)線,默認(rèn)不平滑,可以設(shè)置成 true 平滑顯示。
    # 也可以設(shè)置為 01 的值,表示平滑程度。
    smooth: Union[bool, Numeric] = False,

    # 線條樣式,參考 `LineStyleOpts`
    linestyle_opts: Union[LineStyleOpts, dict, None] = None,
)

Demo

gallery 示例

Polar:極坐標(biāo)系

class pyecharts.charts.Polar
class Polar(
    # 初始化配置項(xiàng),參考 `global_options.InitOpts`
    init_opts: opts.InitOpts = opts.InitOpts()
)
func pyecharts.charts.Polar.add_schema
 def add_schema(
    radiusaxis_opts: Union[opts.RadiusAxisOpts, dict] = opts.RadiusAxisOpts(),
    angleaxis_opts: Union[opts.AngleAxisOpts, dict] = opts.AngleAxisOpts(),
)
func pyecharts.charts.Polar.add
def add(
    # 系列名稱,用于 tooltip 的顯示,legend 的圖例篩選。
    series_name: str,

    # 系列數(shù)(jù)(xiàng)
    data: Sequence,

    # 是否選中圖例
    is_selected: bool = True,

    # 圖表類型,支持
    # ChartType.SCATTER, ChartType.LINE, ChartType.BAR,ChartType.EFFECT_SCATTER
    type_: str = "line",

    # ECharts 提供的標(biāo)記類型包括 'circle', 'rect', 'roundRect', 'triangle', 
    # 'diamond', 'pin', 'arrow', 'none'
    # 可以通過 'image://url'(shè)置為圖片,其中 URL 為圖片的鏈接,或者 dataURI。
    symbol: Optional[str] = None,

    # 標(biāo)記的大小,可以設(shè)置成諸如 10 這樣單一的數(shù)字,也可以用數(shù)組分開表示寬和高,
    # 例如 [20, 10] 表示標(biāo)記寬為 20,高為 10。
    symbol_size: Numeric = 4,

    # 數(shù)(jù)堆疊,同個類目軸上系列配置相同的 stack 值可以堆疊放置。
    stack: Optional[str] = None,

    # 標(biāo)簽配置項(xiàng),參考 `series_options.LabelOpts`
    label_opts: Union[opts.LabelOpts, dict] = opts.LabelOpts(),

    # 區(qū)域填充樣式配置項(xiàng),參考 `series_options.AreaStyleOpts`
    areastyle_opts: Union[opts.AreaStyleOpts, dict] = opts.AreaStyleOpts(),

    # 坐標(biāo)軸刻度配置項(xiàng),參考 `global_options.AxisTickOpts`
    axistick_opts: Union[AxisTickOpts, dict, None] = None,

    # 漣漪特效配置項(xiàng),參考 `series_options.EffectOpts`
    effect_opts: Union[opts.EffectOpts, dict] = opts.EffectOpts(),

    # 提示框組件配置項(xiàng),參考 `series_options.TooltipOpts`
    tooltip_opts: Union[opts.TooltipOpts, dict, None] = None,
)

RadiusAxisItem:極坐標(biāo)系徑向軸數(shù)據(jù)項(xiàng)

class pyecharts.options.RadiusAxisItem
class RadiusAxisItem(
    value: Optional[str] = None,
    textstyle_opts: Optional[TextStyleOpts] = None,
)

RadiusAxisOpts:極坐標(biāo)系徑向軸配置項(xiàng)

class pyecharts.options.RadiusAxisOpts
class RadiusAxisOpts(
    # 徑向軸所在的極坐標(biāo)系的索引,默認(rèn)使用第一個極坐標(biāo)系。
    polar_index: Optional[int] = None,

    # 數(shù)據(jù)項(xiàng),參考 `global_options.RadiusAxisItem`
    data: Optional[Sequence[Union[RadiusAxisItem, dict, str]]] = None,

    # 坐標(biāo)軸兩邊留白策略,類目軸和非類目軸的設(shè)置和表現(xiàn)不一樣。
    # 類目軸中 boundaryGap 可以配置為 true 和 false。默認(rèn)為 true,這時候刻度只是作為分隔線,
    # 標(biāo)簽和數(shù)據(jù)點(diǎn)都會在兩個刻度之間的帶(band)中間。
    # 非類目軸,包括時間,數(shù)值,對數(shù)軸,boundaryGap是一個兩個值的數(shù)組,分別表示數(shù)據(jù)最小值和最大值的延伸范圍
    # 可以直接設(shè)置數(shù)值或者相對的百分比,在設(shè)置 min 和 max 后無效。 示例:boundaryGap: ['20%', '20%']
    boundary_gap: Union[bool, Sequence] = None,

    # 坐標(biāo)軸類型??蛇x:
    # 'value': 數(shù)值軸,適用于連續(xù)數(shù)據(jù)。
    # 'category': 類目軸,適用于離散的類目數(shù)據(jù),為該類型時必須通過 data 設(shè)置類目數(shù)據(jù)。
    # 'time': 時間軸,適用于連續(xù)的時序數(shù)據(jù),與數(shù)值軸相比時間軸帶有時間的格式化,在刻度計算上也有所不同
    # 例如會根據(jù)跨度的范圍來決定使用月,星期,日還是小時范圍的刻度。
    # 'log' 對數(shù)軸。適用于對數(shù)數(shù)據(jù)。
    type_: Optional[str] = None,

    # 坐標(biāo)軸名稱。
    name: Optional[str] = None,

    # 坐標(biāo)軸名稱顯示位置??蛇x:
    # 'start', 'middle' 或者 'center','end
    name_location: Optional[str] = None,

    # 坐標(biāo)軸刻度最小值。
    # 可以設(shè)置成特殊值 'dataMin',此時取數(shù)據(jù)在該軸上的最小值作為最小刻度。
    # 不設(shè)置時會自動計算最小值保證坐標(biāo)軸刻度的均勻分布。
    # 在類目軸中,也可以設(shè)置為類目的序數(shù)(如類目軸 data: ['類A', '類B', '類C'] 中,序數(shù) 2 表示 '類C'
    # 也可以設(shè)置為負(fù)數(shù),如 -3)。
    min_: Union[str, Numeric, None] = None,

    # 坐標(biāo)軸刻度最大值。
    # 可以設(shè)置成特殊值 'dataMax',此時取數(shù)據(jù)在該軸上的最大值作為最大刻度。
    # 不設(shè)置時會自動計算最大值保證坐標(biāo)軸刻度的均勻分布。
    # 在類目軸中,也可以設(shè)置為類目的序數(shù)(如類目軸 data: ['類A', '類B', '類C'] 中,序數(shù) 2 表示 '類C'
    # 也可以設(shè)置為負(fù)數(shù),如 -3)。
    max_: Union[str, Numeric, None] = None,

    # 只在數(shù)值軸中(type: 'value')有效。
    # 是否是脫離 0 值比例。設(shè)置成 true 后坐標(biāo)刻度不會強(qiáng)制包含零刻度。在雙數(shù)值軸的散點(diǎn)圖中比較有用。
    # 在設(shè)置 min 和 max 之后該配置項(xiàng)無效。
    is_scale: bool = False,

    # 強(qiáng)制設(shè)置坐標(biāo)軸分割間隔。
    interval: Optional[Numeric] = None,

    # 分割線配置項(xiàng),參考 `series_options.SplitLineOpts`
    splitline_opts: Union[SplitLineOpts, dict, None] = None,

    # 坐標(biāo)軸在 grid 區(qū)域中的分隔區(qū)域,默認(rèn)不顯示。參考 `series_options.SplitAreaOpts`
    splitarea_opts: Union[SplitAreaOpts, dict, None] = None,

    # 坐標(biāo)軸線風(fēng)格配置項(xiàng),參考 `series_options.AxisLineOpts`
    axisline_opts: Union[AxisLineOpts, dict, None] = None,

    # 坐標(biāo)軸線標(biāo)簽配置項(xiàng),參考 `series_options.LabelOpts`
    axislabel_opts: Union[LabelOpts, dict, None] = None,

    # 半徑軸組件的所有圖形的 z 值。控制圖形的前后順序。z 值 小的圖形會被 z 值大的圖形覆蓋
    z: Optional[int] = None,
)

AngleAxisItem:極坐標(biāo)系角度軸數(shù)據(jù)項(xiàng)

class pyecharts.options.AngleAxisItem
class AngleAxisItem(
    value: Optional[str] = None,
    textstyle_opts: Optional[TextStyleOpts] = None,
)

AngleAxisOpts:極坐標(biāo)系角度軸配置項(xiàng)

class pyecharts.options.AngleAxisOpts
class AngleAxisOpts(
    # 徑向軸所在的極坐標(biāo)系的索引,默認(rèn)使用第一個極坐標(biāo)系。
    polar_index: Optional[int] = None,
    data: Optional[Sequence[Union[AngleAxisItem, dict, str]]] = None,
    start_angle: Optional[Numeric] = None,
    is_clockwise: bool = False,

    # 坐標(biāo)軸兩邊留白策略,類目軸和非類目軸的設(shè)置和表現(xiàn)不一樣。
    # 類目軸中 boundaryGap 可以配置為 true 和 false。默認(rèn)為 true,這時候刻度只是作為分隔線,
    # 標(biāo)簽和數(shù)(jù)(diǎn)都會在兩個刻度之間的帶(band)中間。
    # 非類目軸,包括時間,數(shù)值,對數(shù)軸,boundaryGap是一個兩個值的數(shù)組,分別表示數(shù)(jù)最小值和最大值的延伸范圍
    # 可以直接設(shè)置數(shù)值或者相對的百分比,在設(shè)置 min 和 max 后無效。 示例:boundaryGap: ['20%', '20%']
    boundary_gap: Union[bool, Sequence] = None,

    # 坐標(biāo)軸類型。可選:
    # 'value': 數(shù)值軸,適用于連續(xù)(shù)(jù)。
    # 'category': 類目軸,適用于離散的類目數(shù)(jù),為該類型時必須通過 data 設(shè)置類目數(shù)(jù)。
    # 'time': 時間軸,適用于連續(xù)的時序數(shù)(jù),與數(shù)值軸相比時間軸帶有時間的格式化,在刻度計算上也有所不同
    # 例如會根據(jù)跨度的范圍來決定使用月,星期,日還是小時范圍的刻度。
    # 'log' 對數(shù)軸。適用于對數(shù)(shù)(jù)。
    type_: Optional[str] = None,

    # 坐標(biāo)軸刻度最小值。
    # 可以設(shè)置成特殊值 'dataMin',此時取數(shù)(jù)在該軸上的最小值作為最小刻度。
    # 不設(shè)置時會自動計算最小值保證坐標(biāo)軸刻度的均勻分布。
    # 在類目軸中,也可以設(shè)置為類目的序數(shù)(如類目軸 data: ['類A', '類B', '類C'] 中,序數(shù) 2 表示 '類C'
    # 也可以設(shè)置為負(fù)(shù),如 -3)。
    min_: Union[str, Numeric, None] = None,

    # 坐標(biāo)軸刻度最大值。
    # 可以設(shè)置成特殊值 'dataMax',此時取數(shù)(jù)在該軸上的最大值作為最大刻度。
    # 不設(shè)置時會自動計算最大值保證坐標(biāo)軸刻度的均勻分布。
    # 在類目軸中,也可以設(shè)置為類目的序數(shù)(如類目軸 data: ['類A', '類B', '類C'] 中,序數(shù) 2 表示 '類C'
    # 也可以設(shè)置為負(fù)(shù),如 -3)。
    max_: Union[str, Numeric, None] = None,

    # 只在數(shù)值軸中(type: 'value')有效。
    # 是否是脫離 0 值比例。設(shè)置成 true 后坐標(biāo)刻度不會強(qiáng)制包含零刻度。在雙數(shù)值軸的散點(diǎn)圖中比較有用。
    # 在設(shè)置 min 和 max 之后該配置項(xiàng)無效。
    is_scale: bool = False,

    # 坐標(biāo)軸的分割段數(shù),需要注意的是這個分割段數(shù)只是個預(yù)估值,最后實(shí)際顯示的段數(shù)會在這個基礎(chǔ)上根據(jù)分割后坐標(biāo)軸刻度顯示的易讀程度作調(diào)整。
    # 在類目軸中無效。
    split_number: Numeric = 5,

    # 強(qiáng)制設(shè)置坐標(biāo)軸分割間隔。
    interval: Optional[Numeric] = None,

    # 分割線風(fēng)格配置項(xiàng),參考 `series_options.SplitLineOpts`
    splitline_opts: Union[SplitLineOpts, dict, None] = None,

    # 坐標(biāo)軸線風(fēng)格配置項(xiàng),參考 `series_options.AxisLineOpts`
    axisline_opts: Union[AxisLineOpts, dict, None] = None,

    # 坐標(biāo)軸標(biāo)簽風(fēng)格配置項(xiàng),參考 `series_options.LabelOpts`
    axislabel_opts: Union[LabelOpts, dict, None] = None,

    # 半徑軸組件的所有圖形的 z 值??刂茍D形的前后順序。z 值 小的圖形會被 z 值大的圖形覆蓋
    z: Optional[int] = None,
)

Demo

gallery 示例

Radar:雷達(dá)圖

class pyecharts.charts.Radar
class Radar(
    # 初始化配置項(xiàng),參考 `global_options.InitOpts`
    init_opts: opts.InitOpts = opts.InitOpts()
)
func pyecharts.charts.Radar.add_schema
def add_schema(
    # 雷達(dá)指示器配置項(xiàng)列表,參考 `RadarIndicatorItem`
    schema: Sequence[Union[opts.RadarIndicatorItem, dict]],

    # 雷達(dá)圖繪制類型,可選 'polygon''circle'
    shape: Optional[str] = None,

    # 雷達(dá)的中心(圓心)坐標(biāo),數(shù)組的第一項(xiàng)是橫坐標(biāo),第二項(xiàng)是縱坐標(biāo)。
    # 支持設(shè)置成百分比,設(shè)置成百分比時第一項(xiàng)是相對于容器寬度,第二項(xiàng)是相對于容器高度。
    center: Optional[types.Sequence] = None,

    # 文字樣式配置項(xiàng),參考 `series_options.TextStyleOpts`
    textstyle_opts: Union[opts.TextStyleOpts, dict] = opts.TextStyleOpts(),

    # 分割線配置項(xiàng),參考 `series_options.SplitLineOpts`
    splitline_opt: Union[opts.SplitLineOpts, dict] = opts.SplitLineOpts(is_show=True),

    # 分隔區(qū)域配置項(xiàng),參考 `series_options.SplitAreaOpts`
    splitarea_opt: Union[opts.SplitAreaOpts, dict] = opts.SplitAreaOpts(),

    # 坐標(biāo)軸軸線配置項(xiàng),參考 `global_options.AxisLineOpts`
    axisline_opt: Union[opts.AxisLineOpts, dict] = opts.AxisLineOpts(),

    # 極坐標(biāo)系的徑向軸。參考 `basic_charts.RadiusAxisOpts`
    radiusaxis_opts: types.RadiusAxis = None,

    # 極坐標(biāo)系的角度軸。參考 `basic_charts.AngleAxisOpts`
    angleaxis_opts: types.AngleAxis = None,

    # 極坐標(biāo)系配置,參考 `global_options.PolorOpts`
    polar_opts: types.Polar = None,
)
func pyecharts.charts.Radar.add
def add(
    # 系列名稱,用于 tooltip 的顯示,legend 的圖例篩選。
    series_name: str,

    # 系列數(shù)(jù)(xiàng)
    data: types.Sequence[types.Union[opts.RadarItem, dict]],

    # 是否選中圖例
    is_selected: bool = True,

    # ECharts 提供的標(biāo)記類型包括 'circle', 'rect', 'roundRect', 'triangle', 
    # 'diamond', 'pin', 'arrow', 'none'
    # 可以通過 'image://url'(shè)置為圖片,其中 URL 為圖片的鏈接,或者 dataURI。
    symbol: Optional[str] = None,

    # 系列 label 顏色
    color: Optional[str] = None,

    # 標(biāo)簽配置項(xiàng),參考 `series_options.LabelOpts`
    label_opts: opts.LabelOpts = opts.LabelOpts(),

    # 線樣式配置項(xiàng),參考 `series_options.LineStyleOpts`
    linestyle_opts: opts.LineStyleOpts = opts.LineStyleOpts(),

    # 區(qū)域填充樣式配置項(xiàng),參考 `series_options.AreaStyleOpts`
    areastyle_opts: opts.AreaStyleOpts = opts.AreaStyleOpts(),

    # 提示框組件配置項(xiàng),參考 `series_options.TooltipOpts`
    tooltip_opts: Union[opts.TooltipOpts, dict, None] = None,
)

RadarIndicatorItem

class pyecharts.options.RadarIndicatorItem
class RadarIndicatorItem(
    # 指示器名稱。
    name: Optional[str] = None,

    # 指示器的最大值,可選,建議設(shè)置
    min_: Optional[Numeric] = None,

    # 指示器的最小值,可選,默認(rèn)為 0。
    max_: Optional[Numeric] = None,

    # 標(biāo)簽特定的顏色。
    color: Optional[str] = None,
)

RadarItem:雷達(dá)圖數(shù)據(jù)項(xiàng)

class RadarItem(
    # 數(shù)(jù)(xiàng)名稱
    name: Optional[str] = None,

    # 單個數(shù)(jù)(xiàng)的數(shù)值。
    value: Optional[Numeric] = None,

    # 單個數(shù)(jù)(biāo)記的圖形。
    symbol: Optional[str] = None,

    # 單個數(shù)(jù)(biāo)記的大小
    symbol_size: Union[Sequence[Numeric], Numeric] = None,

    # 單個數(shù)(jù)(biāo)記的旋轉(zhuǎn)角度(而非弧度)。
    symbol_rotate: Optional[Numeric] = None,

    # 如果 symbol 是 path:// 的形式,是否在縮放時保持該圖形的長寬比。
    symbol_keep_aspect: bool = False,

    # 單個數(shù)(jù)(biāo)記相對于原本位置的偏移。
    symbol_offset: Optional[Sequence] = None,

    # 標(biāo)簽配置項(xiàng),參考 `series_options.LabelOpts`
    label_opts: Union[LabelOpts, dict, None] = None,

    # 圖元樣式配置項(xiàng),參考 `series_options.ItemStyleOpts`
    itemstyle_opts: Union[ItemStyleOpts, dict, None] = None,

    # 提示框組件配置項(xiàng),參考 `series_options.TooltipOpts`
    tooltip_opts: Union[TooltipOpts, dict, None] = None,

    # 線樣式配置項(xiàng),參考 `series_options.LineStyleOpts`
    linestyle_opts: Union[LineStyleOpts, dict, None] = None,

    # 區(qū)域填充樣式配置項(xiàng),參考 `series_options.AreaStyleOpts`
    areastyle_opts: Union[AreaStyleOpts, dict, None] = None,
)

Demo

gallery 示例

Sankey:?;鶊D

class pyecharts.charts.Sankey
class Sankey(
    # 初始化配置項(xiàng),參考 `global_options.InitOpts`
    init_opts: opts.InitOpts = opts.InitOpts()
)
class pyechart.options.SankeyLevelsOpts
class SankeyLevelsOpts(
    # 指定設(shè)置的是?;鶊D哪一層,取值從 0 開始。
    depth: Numeric = None,

    # 桑基圖指定層節(jié)(diǎn)的樣式。參考 `global_opts.ItemStyleOpts`
    itemstyle_opts: Union[ItemStyleOpts, dict, None] = None,

    # 桑基圖指定層出邊的樣式。
    # 其中 lineStyle.color 支持設(shè)置為'source'或者'target'特殊值,此時出邊會自動取源節(jié)(diǎn)或目標(biāo)(jié)(diǎn)的顏色作為自己的顏色。
    # 參考 `global_opts.LineStyleOpts`
    linestyle_opts: Union[LineStyleOpts, dict, None] = None,
)
func pyecharts.charts.Sankey.add
def add(
    # 系列名稱,用于 tooltip 的顯示,legend 的圖例篩選。
    series_name: str,
    nodes: Sequence,
    links: Sequence,

    # 是否選中圖例
    is_selected: bool = True,

    # Sankey 組件離容器左側(cè)的距離。
    pos_left: types.Union[str, types.Numeric] = "5%",

    # Sankey 組件離容器上側(cè)的距離。
    pos_top: types.Union[str, types.Numeric] = "5%",

    # Sankey 組件離容器右側(cè)的距離。
    pos_right: types.Union[str, types.Numeric] = "20%",

    # Sankey 組件離容器下側(cè)的距離。
    pos_bottom: types.Union[str, types.Numeric] = "5%",

    # 桑基圖中每個矩形節(jié)(diǎn)的寬度。
    node_width: Numeric = 20,

    # 桑基圖中每一列任意兩個矩形節(jié)(diǎn)之間的間隔。
    node_gap: Numeric = 8,

    # ?;鶊D中節(jié)(diǎn)的對齊方式,默認(rèn)是雙端對齊,可以設(shè)置為左對齊或右對齊,對應(yīng)的值分別是:
    # justify: 節(jié)(diǎn)雙端對齊。
    # left: 節(jié)(diǎn)左對齊。
    # right: 節(jié)(diǎn)右對齊。
    node_align: str = "justify",

    # 布局的迭代次數(shù),用來不斷優(yōu)化圖中節(jié)(diǎn)的位置,以減少節(jié)(diǎn)和邊之間的相互遮蓋。
    # 默認(rèn)布局迭代次數(shù)32。
    # 注: 布局迭代次數(shù)不要低于默認(rèn)值。
    layout_iterations: types.Numeric = 32,

    # ?;鶊D中節(jié)(diǎn)的布局方向,可以是水平的從左往右,也可以是垂直的從上往下。
    # 對應(yīng)的參數(shù)值分別是 horizontal, vertical。
    orient: str = "horizontal",

    # 控制節(jié)(diǎn)拖拽的交互,默認(rèn)開啟。開啟后,用戶可以將圖中任意節(jié)(diǎn)拖拽到任意位置。若想關(guān)閉此交互,只需將值設(shè)為 false 就行了。
    is_draggable: bool = True,

    # 鼠標(biāo) hover 到節(jié)(diǎn)或邊上,相鄰接的節(jié)(diǎn)和邊高亮的交互,默認(rèn)(guān)閉,可手動開啟。
    # false:hover 到節(jié)(diǎn)或邊時,只有被 hover 的節(jié)(diǎn)或邊高亮。
    # true:同 'allEdges'。
    # 'allEdges':hover 到節(jié)(diǎn)時,與節(jié)(diǎn)鄰接的所有邊以及邊對應(yīng)的節(jié)(diǎn)全部高亮。hover 到邊時,邊和相鄰節(jié)(diǎn)高亮。
    # 'outEdges':hover 的節(jié)(diǎn)、節(jié)(diǎn)的出邊、出邊鄰接的另一節(jié)(diǎn) 會被高亮。hover 到邊時,邊和相鄰節(jié)(diǎn)高亮。
    # 'inEdges':hover 的節(jié)(diǎn)、節(jié)(diǎn)的入邊、入邊鄰接的另一節(jié)(diǎn) 會被高亮。hover 到邊時,邊和相鄰節(jié)(diǎn)高亮。
    focus_node_adjacency: types.Union[bool, str] = False,

    # 桑基圖每一層的設(shè)置??梢灾饘釉O(shè)置
    levels: types.SankeyLevel = None,

    # 標(biāo)簽配置項(xiàng),參考 `series_options.LabelOpts`
    label_opts: Union[opts.LabelOpts, dict] = opts.LabelOpts(),

    # 線條樣式配置項(xiàng),參考 `series_options.LineStyleOpts`
    linestyle_opt: Union[opts.LineStyleOpts, dict] = opts.LineStyleOpts(),

    # 提示框組件配置項(xiàng),參考 `series_options.TooltipOpts`
    tooltip_opts: Union[opts.TooltipOpts, dict, None] = None,
)

Demo

gallery 示例

Sunburst:旭日圖

class pyecharts.charts.Sunburst
class Sunburst(
    # 初始化配置項(xiàng),參考 `global_options.InitOpts`
    init_opts: opts.InitOpts = opts.InitOpts()
)
func pyecharts.charts.Sunburst.add
def add(
    # 系列名稱,用于 tooltip 的顯示,legend 的圖例篩選。
    series_name: str,

    # 數(shù)(jù)(xiàng)。
    data_pair: Sequence,

    # 旭日圖的中心(圓心)坐標(biāo),數(shù)組的第一項(xiàng)是橫坐標(biāo),第二項(xiàng)是縱坐標(biāo)。
    # 支持設(shè)置成百分比,設(shè)置成百分比時第一項(xiàng)是相對于容器寬度,第二項(xiàng)是相對于容器高度。
    center: Optional[Sequence] = None,

    # 旭日圖的半徑??梢詾槿缦骂愋停?    # Sequence.<int|str>:數(shù)組的第一項(xiàng)是內(nèi)半徑,第二項(xiàng)是外半徑。
    radius: Optional[Sequence] = None,

    # 當(dāng)鼠標(biāo)移動到一個扇形塊時,可以高亮相關(guān)的扇形塊。
    # 'descendant':高亮該扇形塊和后代元素,其他元素將被淡化;
    # 'ancestor':高亮該扇形塊和祖先元素;
    # 'self':只高亮自身;
    # 'none':不會淡化其他元素。
    highlight_policy: str = "descendant",

    # 點(diǎn)擊節(jié)(diǎn)后的行為。可取值為:false:節(jié)(diǎn)(diǎn)擊無反應(yīng)。
    # 'rootToNode':點(diǎn)擊節(jié)(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: str = "rootToNode",

    # 扇形塊根據(jù)(shù)(jù) value 的排序方式,如果未指定 value,則其值為子元素 value 之和。
    # 'desc':降序排序;
    # 'asc':升序排序;
    # 'null':表示不排序,使用原始數(shù)(jù)的順序;
    # 使用 javascript 回調(diào)函數(shù)(jìn)行排列:
    sort_: Optional[JSFunc] = "desc",

    # 旭日圖多層級配置
    # 目前配置方式可以參考: https://www.echartsjs.com/option.html#series-sunburst.levels
    levels: Optional[Sequence] = None,

    # 標(biāo)簽配置項(xiàng),參考 `series_options.LabelOpts`
    label_opts: Union[opts.LabelOpts, dict] = opts.LabelOpts(),

    # 數(shù)(jù)(xiàng)的配置,參考 `series_options.ItemStyleOpts`
    itemstyle_opts: Union[opts.ItemStyleOpts, dict, None] = None,
)

SunburstItem: 旭日圖的數(shù)據(jù)項(xiàng)

class pyecharts.options.SunburstItem
class SunburstItem(
    # 數(shù)(jù)值,如果包含 children,則可以不寫 value 值。
    # 這時,將使用子元素的 value 之和作為父元素的 value。
    # 如果 value 大于子元素之和,可以用來表示還有其他子元素未顯示。
    value: Optional[Numeric] = None,

    # 顯示在扇形塊中的描述文字。
    name: Optional[str] = None,

    # 點(diǎn)擊此節(jié)(diǎn)可跳轉(zhuǎn)的超鏈接。須 Sunburst.add.node_click 值為 'link' 時才生效
    link: Optional[str] = None,

    # 意義同 HTML <a> 標(biāo)簽中的 target,跳轉(zhuǎn)方式的不同
    # blank 是在新窗口或者新的標(biāo)簽頁中打開
    # self 則在當(dāng)前頁面或者當(dāng)前標(biāo)簽頁打開
    target: Optional[str] = "blank",

    # 標(biāo)簽配置項(xiàng),參考 `series_options.LabelOpts`
    label_opts: Union[LabelOpts, dict, None] = None,

    # 數(shù)(jù)(xiàng)配置項(xiàng),參考 `series_options.ItemStyleOpts`
    itemstyle_opts: Union[ItemStyleOpts, dict, None] = None,

    # 子節(jié)(diǎn)(shù)(jù)(xiàng)配置配置(和 SunburstItem 一致, 遞歸下去)
    children: Optional[Sequence] = None,
)

Demo

gallery 示例

ThemeRiver:主題河流圖

class pyecharts.charts.ThemeRiver
class ThemeRiver(
    # 初始化配置項(xiàng),參考 `global_options.InitOpts`
    init_opts: opts.InitOpts = opts.InitOpts()
)
func pyecharts.charts.ThemeRiver.add
def add(
    # 系列名稱,用于 tooltip 的顯示,legend 的圖例篩選。
    series_name: Sequence,

    # 系列數(shù)(jù)(xiàng)
    data: types.Sequence[types.Union[opts.ThemeRiverItem, dict]],

    # 是否選中圖例
    is_selected: bool = True,

    # 標(biāo)簽配置項(xiàng),參考 `series_options.LabelOpts`
    label_opts: Union[opts.LabelOpts, dict] = opts.LabelOpts(),

    # 提示框組件配置項(xiàng),參考 `series_options.TooltipOpts`
    tooltip_opts: Union[opts.TooltipOpts, dict, None] = None,

    # 單軸組件配置項(xiàng),參考 `global_options.SingleAxisOpts`
    singleaxis_opts: Union[opts.SingleAxisOpts, dict] = opts.SingleAxisOpts(),
):

ThemeRiverItem:主題河流圖數(shù)據(jù)項(xiàng)

class ThemeRiverItem(
    # 時間或主題的時間屬性。
    date: Optional[str] = None,

    # 事件或主題在某個時間點(diǎn)的值。
    value: Optional[Numeric] = None,

    # 事件或主題的名稱。
    name: Optional[str] = None,
)

Demo

gallery 示例

WordCloud:詞云圖

class pyecharts.charts.WordCloud
class WordCloud(
    # 初始化配置項(xiàng),參考 `global_options.InitOpts`
    init_opts: opts.InitOpts = opts.InitOpts()
)
func pyecharts.charts.WordCloud.add
def add(
    # 系列名稱,用于 tooltip 的顯示,legend 的圖例篩選。
    series_name: str,

    # 系列數(shù)據(jù)項(xiàng),[(word1, count1), (word2, count2)]
    data_pair: Sequence,

    # 詞云圖輪廓,有 'circle', 'cardioid', 'diamond', 'triangle-forward', 'triangle', 'pentagon', 'star' 可選
    shape: str = "circle",

    # 自定義的圖片(目前支持 jpg, jpeg, png, ico 的格式,其他的圖片格式待測試)
    # 該參數(shù)支持:
    # 1、 base64 (需要補(bǔ)充 data 頭);
    # 2、本地文件路徑(相對或者絕對路徑都可以)
    # 注:如果使用了 mask_image 之后第一次渲染會出現(xiàn)空白的情況,再刷新一次就可以了(Echarts 的問題)
    # Echarts Issue: https://github.com/ecomfe/echarts-wordcloud/issues/74
    mask_image: types.Optional[str] = None,

    # 單詞間隔
    word_gap: Numeric = 20,

    # 單詞字體大小范圍
    word_size_range=None,

    # 旋轉(zhuǎn)單詞角度
    rotate_step: Numeric = 45,

    # 距離左側(cè)的距離
    pos_left: types.Optional[str] = None,

    # 距離頂部的距離
    pos_top: types.Optional[str] = None,

    # 距離右側(cè)的距離
    pos_right: types.Optional[str] = None,

    # 距離底部的距離
    pos_bottom: types.Optional[str] = None,

    # 詞云圖的寬度
    width: types.Optional[str] = None,

    # 詞云圖的高度
    height: types.Optional[str] = None,

    # 允許詞云圖的數(shù)據(jù)展示在畫布范圍之外
    is_draw_out_of_bound: bool = False,

    # 提示框組件配置項(xiàng),參考 `series_options.TooltipOpts`
    tooltip_opts: Union[opts.TooltipOpts, dict, None] = None,

    # 詞云圖文字的配置
    textstyle_opts: types.TextStyle = None,

    # 詞云圖文字陰影的范圍
    emphasis_shadow_blur: types.Optional[types.Numeric] = None,

    # 詞云圖文字陰影的顏色
    emphasis_shadow_color: types.Optional[str] = None,
)

Demo

gallery 示例


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號