大数据可视化(四)比例数据可视化

比例数据根据类别、子类别、群体进行划分。

整体与部分

可以呈现各个部分与其他部分的相对关系,还可以呈现整体的构成情况

饼图与环形图

不太适合表示精确的数据

适合呈现各部分在整体中的比例,体现部分与整体之间的关系

data=pd.read_csv("data/vote_result.csv")
datab=data["Areas_of_interest"].values.tolist()
data_num=data["Votes"].values.tolist()
print(data.values.tolist())
pie=(
    Pie()
    .add("感兴趣的领域",data.values.tolist(),radius=[80,150])#center=[水平,垂直]移动图形位置     radius=[内径,外径]设置空心

    .set_global_opts(title_opts=opts.TitleOpts(title="用户感兴趣的领域",#标题
                                                  subtitle="以下是读者投票结果",#副标题
                                                  pos_left="center"),
                     legend_opts=opts.LegendOpts(#is_show=False,#去掉图例
                                                pos_left=0,
                                                orient="vertical",#图例垂直
                                                 ),
                     )
    .set_series_opts(label_opts=opts.LabelOpts(is_show=False,#是否显示标签
                                               ),#
                     )
    .render("result/bing.html")
)

比例中的堆叠

呈现比例数据 

data=pd.read_excel("data/obama-approval-ratings.xls")
x=data["Issue"].values.tolist()
y1=data["Approve"].values.tolist()
y2=data["Disapprove"].values.tolist()
y3=data["None"].values.tolist()
print(y1)
bar=(
    Bar()
    .add_xaxis(x)
    .add_yaxis("Approve",y1,stack=True)
    .add_yaxis("Disapprove",y2,stack=True)
    .add_yaxis("None",y3,stack=True)
    .set_global_opts(title_opts=opts.TitleOpts("1","2"),
                     xaxis_opts=opts.AxisOpts(
                             axislabel_opts=opts.LabelOpts(rotate=30,font_size=9)),#设置大小与倾斜度
                     )
    .set_series_opts(label_opts=opts.LabelOpts(is_show=False))
    .render("result/4-11.html")
)

矩形树图

树图主要用于对树形数据进行可视化,层次结构,只能展示数据之间的层次关系

矩形树图是基于面积的可视化。外部矩形代表父,里面代表子类型。可以展示数据之间的层级关系,也可以通过面积的大小来展示各个类别之间的比例关系。

时空比例

堆叠面积图

可以很好的呈现比例数据随时间的变化情况

可以看到整体的变化趋势,也能看到其中每一类的变化情况

data=pd.read_excel("data/us-population-by-age.xls")
datax=data.iloc[ :, 0].apply(str).values.tolist()
print(datax)
y1=data["Under 5"].values.tolist()
y2=data["5 to 19"].values.tolist()
y3=data["20 to 44"].values.tolist()
y4=data["45 to 64"].values.tolist()
y5=data["65+"].values.tolist()
line=(
    Line(init_opts=opts.InitOpts(width="500px",height="500px")# 设置背景布大小
         )
    .add_xaxis(datax)
    .add_yaxis("Under 5",y1,stack=True,is_smooth=True,areastyle_opts=opts.AreaStyleOpts(opacity=0.5,color="red"))#stack是否堆叠is_smooth是否平滑,areastyle_opts区域设置
    .add_yaxis("5 to 19",y2,stack=True,is_smooth=True,areastyle_opts=opts.AreaStyleOpts(opacity=0.5,color="blue"))
    .add_yaxis("20 to 44",y3,stack=True,is_smooth=True,areastyle_opts=opts.AreaStyleOpts(opacity=0.5,color="green"))
    .add_yaxis("45 to 64",y4,stack=True,is_smooth=True,areastyle_opts=opts.AreaStyleOpts(opacity=0.5,color="yellow"))
    .add_yaxis("65+",y5,stack=True,is_smooth=True,areastyle_opts=opts.AreaStyleOpts(opacity=0.5,color="orange"))
    .set_series_opts(label_opts=opts.LabelOpts(is_show=False))#不显示标签

    .render("result/4-21.html")
)

 

你可能感兴趣的:(#,复习,大数据可视化笔记)