pyecharts的使用


折線圖1

import pyecharts.options as opts
from pyecharts.charts import Line
​
x_data =  ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"]
y_data = [820, 932, 901, 934, 1290, 1330, 1320]
​
(
    Line()
    .set_global_opts(
        # 是否顯示工具欄組件
        tooltip_opts = opts.TooltipOpts(is_show=True),
        # 類目軸,適用於離散的類目數據,為該類型時必須通過 data 設置類目數據。(坐標軸配置項)
        xaxis_opts = opts.AxisOpts(type_="category"),
        yaxis_opts = opts.AxisOpts(
            type_="value",
            # 顯示坐標軸刻度
            axistick_opts=opts.AxisTickOpts(is_show=True),
            # 顯示分割線
            splitline_opts=opts.SplitLineOpts(is_show=True),                     
          )
        
    )
    .add_xaxis(
        xaxis_data = x_data)
    .add_yaxis(
        series_name="銷售額",
        y_axis=y_data,
        # 標記的圖形
        symbol="emptyCircle",
        # 是否顯示symbol
        is_symbol_show=True,
        # 標簽配置項 顯示標簽
        # 值為True時每個點上為對應的數值
        label_opts=opts.LabelOpts(is_show=False),
    )
    .render("basic_line_chart.html")
​
)

 

輸出結果為:

 

堆疊區域折線圖

from pyecharts.charts import Line
import pyecharts.options as opts
x_data = ["周一", "周二", "周三", "周四", "周五", "周六", "周日"]
(
    Line()
    .add_xaxis(xaxis_data=x_data)
    .add_yaxis(
        series_name="郵件營銷",
        # 數據堆疊,同個類目軸上系列配置相同的 stack 值可以堆疊放置
        stack="總量",
        y_axis=[120, 132, 101, 134, 90, 230, 210],
        # 是否顯示標簽(標簽配置項)
        label_opts=opts.LabelOpts(is_show=False),
    )
    .add_yaxis(
        series_name="聯盟廣告",
        # 數據堆疊,同個類目軸上系列配置相同的 stack 值可以堆疊放置
        stack="總量",
        y_axis=[220, 182, 191, 234, 290, 330, 310],
        # 是否顯示標簽(標簽配置項)
        label_opts=opts.LabelOpts(is_show=False),
    )
    .add_yaxis(
        series_name="視頻廣告",
        # 數據堆疊,同個類目軸上系列配置相同的 stack 值可以堆疊放置
        stack="總量",
        y_axis=[150, 232, 201, 154, 190, 330, 410],
        # 是否顯示標簽(標簽配置項)
        label_opts=opts.LabelOpts(is_show=False),
    )
    .add_yaxis(
        series_name="直接訪問",
        # 數據堆疊,同個類目軸上系列配置相同的 stack 值可以堆疊放置
        stack="總量",
        y_axis=[320, 332, 301, 334, 390, 330, 320],
        # 是否顯示標簽(標簽配置項)
        label_opts=opts.LabelOpts(is_show=False),
    )
    .add_yaxis(
        series_name="搜索引擎",
        # 數據堆疊,同個類目軸上系列配置相同的 stack 值可以堆疊放置
        stack="總量",
        y_axis=[820, 932, 901, 934, 1290, 1330, 1320],
        # 是否顯示標簽(標簽配置項)
        label_opts=opts.LabelOpts(is_show=False),
    )
    .set_global_opts(
        title_opts=opts.TitleOpts(title="折線圖堆疊"),
        # 坐標軸觸發,主要在柱狀圖,折線圖等會使用類目軸的圖表中使用(提示框配置項)
        tooltip_opts=opts.TooltipOpts(trigger="axis"),
        # 坐標軸配置項 
        yaxis_opts=opts.AxisOpts(
            type_="value",
            # 顯示坐標軸刻度(坐標軸刻度配置項)
            axistick_opts=opts.AxisTickOpts(is_show=True),
            # 顯示分割線(坐標軸分割線配置項)
            splitline_opts=opts.SplitLineOpts(is_show=True),
        ),
        # 坐標軸兩邊留白策略,默認為True
        xaxis_opts=opts.AxisOpts(type_="category",boundary_gap=False)
    
    )
    .render("stacked_line_chart.html")
​
)

輸出結果為:

 

詞雲圖

import pyecharts.options as opts
from pyecharts.charts import WordCloud
​
data = [
    ("生活資源", "999"),
    ("供熱管理", "888"),
    ("供氣質量", "777"),
    ("生活用水管理", "688"),
    ("一次供水問題", "588"),
    ("交通運輸", "516"),
    ("城市交通", "515"),
    ("環境保護", "483"),
    ("房地產管理", "462"),
    ("城鄉建設", "449"),
    ("社會保障與福利", "429"),
    ("社會保障", "407"),
    ("文體與教育管理", "406"),
    ("公共安全", "406"),
    ("公交運輸管理", "386"),
    ("出租車運營管理", "385"),
    ("供熱管理", "375"),
    ("市容環衛", "355"),
    ("自然資源管理", "355"),
    ("粉塵污染", "335"),
    ("噪聲污染", "324"),
    ("土地資源管理", "304"),
    ("物業服務與管理", "304"),
    ("醫療衛生", "284"),
    ("粉煤灰污染", "284"),
    ("占道", "284"),
    ("供熱發展", "254"),
    ("農村土地規划管理", "254"),
    ("生活噪音", "253"),
    ("供熱單位影響", "253"),
    ("城市供電", "223"),
    ("房屋質量與安全", "223"),
    ("大氣污染", "223"),
    ("房屋安全", "223"),
    ("文化活動", "223"),
    ("拆遷管理", "223"),
    ("公共設施", "223"),
    ("供氣質量", "223"),
    ("供電管理", "223"),
    ("燃氣管理", "152"),
    ("教育管理", "152"),
    ("醫療糾紛", "152"),
    ("執法監督", "152"),   
]
​
(
WordCloud()
    .add(series_name="熱點分析",data_pair=data,shape="diamond",word_size_range=[5,60],rotate_step=45)
    .set_global_opts(
        # 標題配置項
        title_opts=opts.TitleOpts(
            title="熱點分析",title_textstyle_opts=opts.TextStyleOpts(font_size=40,font_family="Arial")
    ),
    # 提示框組件配置
        tooltip_opts = opts.TooltipOpts(is_show=True),
    )
    # 輸出
    .render("wordcloud.html")
)    

輸出結果為:

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM