十分鐘Pyecharts快速上手使用!

本文主要參考:官方文檔

使用例子

更多例子請關注公衆號 拇指筆記

建議一定要看看例子源碼。

爬取京東評價信息並可視化

安裝和查看版本

安裝:

換源爲清華源。

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyecharts

查看版本:

import pyecharts
print(pyecharts.__version__)

導包

本文使用的版本是1.7.1

最常見的問題是直接導入模塊失敗,如:

from pyecharts import Bar

因爲擴展模塊的原因,需要這麼寫才能導入

from pyecharts.charts import Bar

繪製柱形圖

#創建圖表並設置主題
bar = Bar(init_opts=opts.InitOpts(theme=ThemeType.LIGHT))
#添加x值,x是一個列表
bar.add_xaxis(name)
#添加y值,y是一個列表
bar.add_yaxis('購買人數',count)
#設置主標題、副標題
bar.set_global_opts(title_opts=opts.TitleOpts(title="Dior999色號分佈", subtitle="數據來源:京東"))
#設置生成html文件
bar.render('bar.html')

餅圖文檔

文檔地址

繪製餅狀圖

from pyecharts.charts import Pie
from pandas import Series
import pandas as pd
from pyecharts import options as opts

colors = [你的數據]
ss_colors = Series(colors)

x = ss_colors.value_counts()
list1=x.values.tolist() #數量
list2=x.index.tolist()  #名稱

c = (
    Pie()
    .add(
        "",
        [
            list(z)
            for z in zip(
                list2 ,
                list1 ,
            )
        ],
        center=["40%", "50%"],
    )
    .set_global_opts(
        title_opts=opts.TitleOpts(title="顏色分佈"),
        legend_opts=opts.LegendOpts(type_="scroll", pos_left="80%", orient="vertical"),
    )
    .set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}"))
    .render("pie_scroll_legend.html")
)

富文本餅圖

from pyecharts.charts import Pie
from pandas import Series
import pandas as pd
from pyecharts import options as opts

name,count =[],[]
data_jd = pd.read_csv('K:\學習\get_jd3.csv')
data = data_jd.values.tolist()
for i in range(len(data)):
    now = data[i]
    name.append(now[0])
    count.append(now[1])

c = (
    Pie()
    .add(
        "",
        [list(z) for z in zip(name, count)],
        radius=["40%", "55%"],
        label_opts=opts.LabelOpts(
            position="outside",
            formatter="{a|{a}}{abg|}\n{hr|}\n {b|{b}: }{c}  {per|{d}%}  ",
            background_color="#eee",
            border_color="#aaa",
            border_width=1,
            border_radius=4,
            rich={
                "a": {"color": "#999", "lineHeight": 22, "align": "center"},
                "abg": {
                    "backgroundColor": "#e3e3e3",
                    "width": "100%",
                    "align": "right",
                    "height": 22,
                    "borderRadius": [4, 4, 0, 0],
                },
                "hr": {
                    "borderColor": "#aaa",
                    "width": "100%",
                    "borderWidth": 0.5,
                    "height": 0,
                },
                "b": {"fontSize": 16, "lineHeight": 33},
                "per": {
                    "color": "#eee",
                    "backgroundColor": "#334455",
                    "padding": [2, 4],
                    "borderRadius": 2,
                },
            },
        ),
    )
    .set_global_opts(title_opts=opts.TitleOpts(title=" "))
    .render("pie_rich_label.html")
)

繪製玫瑰圖

from pyecharts.charts import Pie
from pandas import Series
import pandas as pd
from pyecharts import options as opts

name,count =[],[]
data_jd = pd.read_csv('K:\學習\get_jd3.csv')
data = data_jd.values.tolist()
for i in range(len(data)):
    now = data[i]
    name.append(now[0])
    count.append(now[1])

c = (
    Pie()
    .add(
        "",
        [list(z) for z in zip(name, count)],
        radius=["30%", "75%"],
        center=["25%", "50%"],
        rosetype="radius",
        label_opts=opts.LabelOpts(is_show=False),
    )
    .set_global_opts(title_opts=opts.TitleOpts(title=" "))
    .render("pie_rosetype.html")
)

詞雲圖文檔

詞雲文檔

鑽石型詞雲

我沒看出來像鑽石

import pyecharts.options as opts
from pyecharts.charts import WordCloud
import pandas as pd
from pyecharts.globals import SymbolType

data_jd = pd.read_csv('K:\學習\get_jd3.csv')
data = data_jd.values.tolist()
c = (
    WordCloud()
    .add("", data, word_size_range=[20, 100], shape=SymbolType.DIAMOND)
    .set_global_opts(title_opts=opts.TitleOpts(title="WordCloud-shape-diamond"))
    .render("wordcloud_diamond.html")
)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章