散点图也是比较常用的数据分析图,今天来聊聊用matlab如何画一个散点图出来!
  在matlab中,对应散点图的函数是scatter()。参数形式为scatter(横坐标,纵坐标,颜色,RGB通道)
  下面上代码:

%linespace是在0-3pi之间等距选取200个点
x = linspace(0,3*pi,200);
y = cos(x) + rand(1,200);  
scatter(x,y);

  效果图如下:
在这里插入图片描述
  颜色依旧是默认的蓝色,下面聊聊如何修改颜色,让它看上去beautiful!

  根据上面的参数形式,修改代码如下:

x = linspace(0,3*pi,200);
y = cos(x) + rand(1,200);  
scatter(x,y,'r');

  'r’就是字母颜色的简写,这点和plot很像。效果图如下:
在这里插入图片描述
  调节颜色也可以通过RGB通道来进行调节,这样会有更多的选择。代码修改如下:

x = linspace(0,3*pi,200);
y = cos(x) + rand(1,200); 
%格式为scatter(x,y,[],RGB)。第三个是散点的大小,如果默认的话就写[],不写就会报错
scatter(x,y,[],[1,0.5,0])

  效果图如下:
在这里插入图片描述

  关于常用RGB的配色,找到了一篇很好的博客,和大家分享:https://blog.csdn.net/wh1312142954/article/details/80796764link;

  前面讨论了几种不同情况,但实际上画出的都是空心圆。有没有方法使用其他标注呢?当然有啦~

%x,y分别为横纵坐标向量,中间还是老规矩[]RGB通道,最后指定标注类型。这里选择的是*
scatter(x,y,[],[0,0,0.80392],'*')

  效果图如下:在这里插入图片描述

  对于不同标注对应的符号,我在这里分享一位博主的博客,里面有比较详细的说明:https://blog.csdn.net/Eric_KEY/article/details/53285544link

  在这里再插一下:今天终于弄懂plot的RGB值是怎么添加的了,有固定的格式:

%如果想自己调节RGB那么第三个就必须是‘color’
plot(x,y,'color',[RGB]);

  由于可以自动调节RGB值,也可以让RGB不断变换,代码如下:

x = linspace(0,3*pi,200);
y = cos(x) + rand(1,200);
c = linspace(1,10,length(x));
%这样RGB值就是变量了
scatter(x,y,[],c)

  效果图如下(好看吧!):
在这里插入图片描述
  同样scatter也支持三维,使用函数scatter3(x,y,z)。在这里我就不给出例子了(其实是我想不到~)

  散点图get,继续前进!

  参考学习文章:https://zhuanlan.zhihu.com/p/45791053link

本文作者水平有限,如有不足之处,请下方评论区指出,谢谢!

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐