探索Colormap:Matlab、Paraview和Python在有限元后处理中的应用

文摘   2024-10-15 09:00   美国  

题外话:因为微信的推荐机制变动,有可能大家不会第一时间看到我的文章,请大家给我的公众号标上⭐,以免错过好资源。

今天给大家分享的是在使用matlab进行有限元编程时,如何增加后处理云图的colormap种类


在经常使用Paraview进行后处理显示时,会逐渐喜欢上它的云图配色方案,默认coolwarm的就看着很舒服,类似这样的:

给我的感觉:不花哨,且好看。

MFEAOOP作为一整套的有限元程序,在进行云图显示时,除了导出vtk文件,当然还要考虑自身后处理部分,使用Matlab内置的colormap总感觉差点意思。

于是乎,萌生一个想法:自定义colormap。

首先的尝试就是:能不能把python的Matplotlib的内置colormap搞到matlab,原理就是使用colormap的RGB色值。

说搞就搞!在一个开源项目(https://github.com/kunyiwang/Colormap_MATLAB)的帮助下,木木将Matplotlib的内置colormap全部导出至matlab,存储为.mat文件,使用时仅需引用相应的colormap名字即可,比如,我是这样设计的:

% 用户输入的颜色映射名称
colorMapName = jsonData.plot.colorMap;

% 检查用户输入是否为 MATLAB 内置的 colormap
try
    % 尝试使用内置 colormap
    color = colormap(colorMapName);
catch
    % 如果不是内置 colormap,则从 color_maps.mat 文件中加载
    S = load("color_maps.mat", colorMapName);

    if isfield(S, colorMapName)
        color = S.(colorMapName);
    else
        error("Colormap '%s' not found in color_maps.mat and is not a MATLAB built-in colormap.", colorMapName);
    end
end

使用程序时仅需在配置文件json文件中,将colorMap替换为colormap名字,程序支持Matlab内置的配色方案、Matplotlib官网配色方案以及自定义的Abaqus默认配色方案,共计89种。可利用相同的道理继续扩充,不过我觉得没必要,够用了!

接下来我将配色方案的名字及渲染效果展示如下:

Matplotlib

Matlab内置


如果大家对本次推文展示的colormap感兴趣,可在后台回复:colormap,可自动获取相应的下载链接。

以上就是今天分享的有限元程序小点滴,感谢您的碎片化阅读,希望该篇推文对您有所帮助。


觉得本篇推文对你有帮助的话,可以动动的小手一键三连(点赞➕在看➕分享)哦~
粉丝交流群:后台回复stress

参与更多互动交流,快快在下方留言区留下你的小脚印吧~

-End-

♡若喜欢这篇文章,欢迎带它去朋友圈逛♡

易木木响叮当

想陪你一起度过短暂且漫长的科研生活



易木木响叮当
一名求真务实的有限元领域小小UP主,专注于各种单元技术与非线性有限元分析,根据业余时间不定时更新干货内容,号内偶尔会有培训广告的插入,希望大家可以理解,感谢关注!
 最新文章