摘要:pyecharts不仅可以生成传统的柱形图,折线图,散点图等,还可以方便快捷地实现地图热力图、词云图等等。美观,便捷,十分靠谱,如何快速上手,将手中的数据可视化,本篇做一下记录——
pyecharts官方文件:http://pyecharts.org/#/zh-cn/intro
**
pyecharts作图如何直接应用csv-utf8文件中的数据?
案例:做人物画像词云图
**
import pandas as pd
import numpy as np
import pyecharts.options as opts#新版pyechats包属性设置都整合到了同一模块中
from pyecharts.charts import WordCloud
data = pd.read_csv('data.csv',usecols=[0,1,2],names=['人群', '标签', '频次'])#读取文件里特定列,重命名列名
data.head()
data= data[data.人群 == '女性']#数据筛选,特定人群数据
list=data.values.tolist()
a=np.array(list)
a1=[]
a1.append(a[:,1:2])
a1=np.array(a1)
a1= a1.ravel()#多维数组降维,获取到横轴对应数据
a2=[]
a2.append(a[:,2:3])
a2=np.array(a2)
a2 = a2.ravel()#多维数组降维,获取到纵轴对应数据
list = [[a1[i],a2[i]] for i in range(len(a1))] #首先创建数据对
词云图:
(#词云图
WordCloud()
.add(series_name="用户画像词云图", data_pair=list,word_size_range=[6, 66])
.set_global_opts(
title_opts=opts.TitleOpts(
title="用户画像词云图", title_textstyle_opts=opts.TextStyleOpts(font_size=23),
subtitle="女性",
pos_left = 'center',
item_gap = 15,),
tooltip_opts=opts.TooltipOpts(is_show=True),
)
.render("wordcloud_w.html")
)
饼图:
from pyecharts.charts import Pie
(#饼图
Pie(init_opts=opts.InitOpts(width="1600px", height="800px", bg_color="#2c343c"))
.add(
series_name="标签",
data_pair=list,
rosetype="radius",
radius="55%",
center=["50%", "50%"],
label_opts=opts.LabelOpts(is_show=False, position="center"),
)
.set_global_opts(
title_opts=opts.TitleOpts(
title="画像标签分布饼图",
pos_left="center",
pos_top="20",
title_textstyle_opts=opts.TextStyleOpts(color="#fff"),
),
legend_opts=opts.LegendOpts(is_show=False),
)
.set_series_opts(
tooltip_opts=opts.TooltipOpts(
trigger="item", formatter="{a}
{b}: {c} ({d}%)"
),
label_opts=opts.LabelOpts(color="rgba(255, 255, 255, 0.3)"),
)
.render("customized_pie.html")
)
a1=a1.tolist()#横轴数据生成
a2=a2.tolist()#纵轴数据生成
from pyecharts.charts import Bar
c = (#柱状图
Bar()
# .add_xaxis(a1)
# .add_yaxis("频数", a2)
.add_xaxis(xaxis_data=a1)
.add_yaxis(
"频数",
a2,)
.set_global_opts(title_opts=opts.TitleOpts(title="柱状图"))
.render("bar_is_selected.html")
)