首页/文章/ 详情

MATLAB绘图技巧 | 渐变散点图(附完整代码)

2月前浏览2106

本次推文介绍散点图(Scatter)标记(Marker)尺寸和颜色渐变的设计过程。

完整代码如下:

% Demo
clc, clear, close all
% -----------------------
% Background Color
set(gcf,'Color', [1 1 1])
% -----------------------

x = -2*pi:0.1:2*pi; 
y = sinc(x)+cos(x); 
N = length(y);

% Colormaps
color = colormap(cool(N));

% Maker size changing with x axis
markerSize = linspace(1,100,length(x)); % Marker size

% Color changing with y axis
normy = (y - min(y)) ./ (max(y) - min(y));
coloridx = ceil(1+normy*(N-1));
markerColor = color(coloridx,:); % MarkerFaceColor

scatter(x, y, markerSize, markerColor,'o''filled');

title('Scatter with Gradient Colors'
xlim([min(x) max(x)])
colormap(color)

caxis([min(y), max(y)])
cticks = linspace(min(y),max(y),5);
colorbar('Ticks',cticks,'FontSize',10)

defaultAxes

以上代码中,用到的坐标修饰函数defaultAxes代码如下:

function defaultAxes
  ax = gca; 
  hold on,  box on, grid on,
  ax.XGrid = 'on';
  ax.YGrid = 'on';
  ax.XMinorTick = 'on';
  ax.YMinorTick = 'on';
  ax.LineWidth = 1.2;
  ax.GridLineStyle = ':';
  %ax.FontName = 'Cambria';
  %ax.FontSize = 12;
  ax.GridAlpha = .5;
end

运行结果如下:

图1 渐变散点图,上:cool 颜色模式;下:jet颜色模式

本示例代码实现了散点图maker尺寸随x轴和颜色随y轴的渐变。

通过改变数据、maker形状和颜色模式,同样也适用其他类型的绘图,仅供MATLAB初学者参考。


有时候你不努力一下,就不知道什么是绝望。等风来,我们不如追风




图文:彭真明

编辑:刘思敏  


来源:现代石油人
ACTMechanical非线性化学电子油气MATLABpython岩土UM声学裂纹理论材料多尺度控制
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-10-24
最近编辑:2月前
现代石油人
博士 签名征集中
获赞 27粉丝 79文章 849课程 1
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈