画图学习总结

利用pyecharts画图

在聚类分析后利用pyecharts画二维和三维散点图,pyecharts画的图片一般是以html文件保存

首先确定x轴的数据,而后再确定y轴的数据,这样可以确定平面的数据,当然是因为聚类,分了五簇,确定了五个y的值


data_1=data.values
x=data_1[:,3]
y1=x0.values[:,0]
y2=x1.values[:,0]
y3=x2.values[:,0]
y4=x3.values[:,0]
y5=x4.values[:,0]

(Scatter()
  .add_xaxis(xaxis_data=x)                                          #图中不显示数据
  .add_yaxis(series_name='1',y_axis=y1,label_opts=opts.LabelOpts(is_show=False))
  .add_yaxis(series_name='2',y_axis=y2,label_opts=opts.LabelOpts(is_show=False))
  .add_yaxis(series_name='3',y_axis=y3,label_opts=opts.LabelOpts(is_show=False))   
  .add_yaxis(series_name='4',y_axis=y4,label_opts=opts.LabelOpts(is_show=False))
  .add_yaxis(series_name='5',y_axis=y5,label_opts=opts.LabelOpts(is_show=False))
).render("L-M.html")

这样可以画出二维中的点

画图学习总结

对于画三维的图要首先要把数据整理一下,整理成[[x,y,z],[q,w,e]]这种类型的列表三个一组的数据形成三个坐标,抽出xyz的三类数据,利用hstack函数将其合并成三列数组,利用list函数将其变为一个大列表,再解析列表,三个一组这样就可以构成想要的数据形式了,数据构造好,套用官方给的模板就可以了。

from pyecharts.charts import Scatter3D

xd=data_1[:,1]
yd=data_1[:,3]
zd=data_1[:,4]
data_3D=np.hstack((xd,yd,zd))   #三列数据放一起

ls=list(data_3D)
data_list=[ls[i:i+3] for i in range(0,len(ls),3)]

(
    Scatter3D(
        init_opts=opts.InitOpts(width="1440px", height="720px")
    )  # bg_color="black"
    .add(
        series_name="",
        data=data_list,
        xaxis3d_opts=opts.Axis3DOpts(
            name="F",
            type_="value",
            # textstyle_opts=opts.TextStyleOpts(color="#fff"),
        ),
        yaxis3d_opts=opts.Axis3DOpts(
            name="M",
            type_="value",
            # textstyle_opts=opts.TextStyleOpts(color="#fff"),
        ),
        zaxis3d_opts=opts.Axis3DOpts(
            name="R",
            type_="value",
            # textstyle_opts=opts.TextStyleOpts(color="#fff"),
        ),
        grid3d_opts=opts.Grid3DOpts(width=100, height=100, depth=100),
    )
    .set_global_opts(
        visualmap_opts=[
            opts.VisualMapOpts(
                type_="color",       #颜色映射
                is_calculable=True,
                dimension=3,
                pos_top="10",
                max_=79 / 2,
                range_color=[
                    "#1710c0",
                    "#0b9df0",
                    "#00fea8",
                    "#00ff0d",
                    "#f5f811",
                    "#f09a09",
                    "#fe0300",
                ],
            ),
            opts.VisualMapOpts(
                type_="size",            #数值大小映射
                is_calculable=True,        #是否显示拖拽手柄
                dimension=4,
                pos_bottom="10",
                max_=2.4 / 2,
                range_size=[-10, 10],
            ),
        ]
    )
    .render("scatter3d.html")
)

 画图学习总结

 

上一篇:学习Python 能找到工作?1300+条招聘信息告诉你答案


下一篇:【问题】jenkins控制台乱码