1.考察知识点绘制玫瑰图
编写程序,根据“商家A和商家B的各类商品的销售数据.xlsx”使用pyecharts绘制一个玫瑰图。
import pyecharts.options as opts
from pyecharts.charts import Pie
pie = (
Pie()
.add("", [('商家A衬衫', 120), ('商家B衬衫', 60),
('商家A毛衣', 56), ('商家B毛衣', 140),
('商家A领带', 28), ('商家B领带', 153),
('商家A裤子', 98), ('商家B裤子', 145),
('商家A风衣', 129), ('商家B风衣', 160),
('商家A高跟鞋', 28), ('商家B高跟鞋', 70),
('商家A袜子', 107), ('商家B袜子', 54)],
rosetype='radius', radius=[20, 100])
.set_global_opts(title_opts=opts.TitleOpts(title="商家A和商家B各类商品的销售数据玫瑰图"),
legend_opts=opts.LegendOpts(pos_left=10, pos_top=80,
orient='vertical'))
.set_series_opts(label_opts=opts.LabelOpts(formatter='{b}:{c} ({d}%)'))
)
pie.render('商家A和商家B各类商品的销售数据玫瑰图.html')
2. 考察知识点绘制词云图
编写程序。根据“worldcloud.csv”部分宋词词频数据,绘制词云图。
from pyecharts import options as opts
from pyecharts.charts import WordCloud
import pandas as pd
data= pd.read_csv(r'D:\python\data\wordcloud.csv', encoding='gbk')#中文字符编码
words = list(data['词语'].values)
num = list(data['频数'].values)
data=[(i,str(j)) for i, j in zip(words, num)]
wordcloud = (WordCloud()
.add(series_name='词统计', data_pair=data, word_size_range=[10, 100])
.set_global_opts(title_opts=opts.TitleOpts(
title='部分宋词词频词云图', title_textstyle_opts= opts.TextStyleOpts(font_size=23)),tooltip_opts=opts.TooltipOpts(is_show=True)))
wordcloud.render('部分宋词词频词云图.html')
3.考察知识点绘制热力图
编写程序。根据某网站某周一天24小时的点击量部分数据(heatmap.xlsx)绘制热力图。
from pyecharts import options as opts
import pandas as pd
from pyecharts.charts import HeatMap
data = pd.read_excel(r'D:\python\data/heatmap.xlsx', index_col=0)#读取数据,设置第一列为索引值
y_data = list(data.columns)#返回列表形式列标签
x_data = list(data.index)#返回列表形式索引值
values = data.iloc[: , 0: 7].values.tolist()#取多列数据并转化为列表形式
value = [[i, j, values[i][j]]for i in range(len(x_data)) for j in range(len(y_data)) ]
heatmap = (HeatMap(init_opts=opts.InitOpts(width='800px', height='500px'))
.add_xaxis(x_data)
.add_yaxis('',y_data,value,label_opts=opts.LabelOpts( position='inside'))
.set_global_opts(title_opts=opts.TitleOpts(title='某网站某周一天24小时的点击量热力图'),visualmap_opts=opts.VisualMapOpts(pos_bottom='center')))
heatmap.render('某网站某周一天24小时的点击量热力图.html')