matlab 泡泡图,使用matlab绘制2维、3维气泡图

在学习模糊c均值聚类时,突然想到能否将每个样本对所属簇的奴属度(C)用气泡图的形式表示出来,这样就可以在一张图上同时获得分类与奴属度(C)两类信息。在matlab中没有绘制气泡图的专用函数,不过可以通过手动设置参数,来最终达到气泡图的效果。以下是实现代码。二维气泡图的绘制% 这个脚本用来对模糊c均值聚类生成二维气泡图clcclear%% 获得模糊c均值聚类的结果数据load fcmdata.dat...
摘要由CSDN通过智能技术生成

在学习模糊c均值聚类时,突然想到能否将每个样本对所属簇的奴属度(C)用气泡图的形式表示出来,这样就可以在一张图上同时获得分类与奴属度(C)两类信息。在matlab中没有绘制气泡图的专用函数,不过可以通过手动设置参数,来最终达到气泡图的效果。以下是实现代码。

二维气泡图的绘制

% 这个脚本用来对模糊c均值聚类生成二维气泡图

clc

clear

%% 获得模糊c均值聚类的结果数据

load fcmdata.dat

[centers,U] = fcm(fcmdata,2); % 返回聚类中心信息以及每个数据点奴属与各聚类中心的值

index1 = find(U(1,:)==max(U));% 使用find()函数找到属于第一个聚类中心的元素序号

index2 = find(U(2,:)==max(U));% 获得属于第二个聚类中心的元素序号

%% 绘制二维bubble图

figure

weight = normalize(max(U),'range')*600; % 一种扩大一组数据之间差距的方法,否则气泡效果不明显

weight(weight==0)=(1/20)*mean(weight);% 粗略将0值转化为1/20的均值(这是估计出来的)

% 绘制第一个簇的气泡图

for i=1:length(index1)

scatter(fcmdata(index1(i),1),fcmdata(index1(i),2),weight(index1(i)),...

'MarkerEdgeColor','k','MarkerEdgeAlpha',0,'MarkerFaceColor',

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值