Mathematica中文论坛-非官方

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 7837|回复: 0

豆粑粑 matlab 4D slice transparent

[复制链接]

525

主题

594

帖子

2980

积分

金牌会员

Rank: 6Rank: 6

积分
2980
发表于 2017-9-20 09:11:24 | 显示全部楼层 |阅读模式
file_3d_grid_hot.png

  1. clear all
  2. clc
  3. close all

  4. %% outline
  5. % plot scatter points, surf, countour3D

  6. %% main
  7. % load data ---------------------------------------------------------------
  8. % dat=load('./cv_357.txt');
  9. % n=length(dat(:,1));
  10. %
  11. % x=dat(:,1);
  12. % y=dat(:,2);
  13. % z=dat(:,3);
  14. %
  15. % % grid size ---------------------------------------------------------------
  16. % n_cv=30;
  17. % cv_g=linspace(-pi,pi,n_cv);
  18. %
  19. % cv_int=0.5; % 2 calculate point denisty, half of cubic size
  20. % cv_x=cv_g;
  21. % cv_y=cv_g;
  22. % cv_z=cv_g;
  23. %
  24. % [cv_X,cv_Y,cv_Z]=meshgrid(cv_g,cv_g,cv_g);
  25. %
  26. % % points denisty ----------------------------------------------------------
  27. % for i=1:n_cv
  28. %     ind_x= (x>=cv_x(i)-cv_int) & (x<cv_x(i)+cv_int);
  29. %     for j=1:n_cv
  30. %         ind_y= (y>=cv_y(j)-cv_int) & (y<cv_y(j)+cv_int);
  31. %         for k=1:n_cv
  32. %             ind_z= (z>=cv_z(k)-cv_int) & (z<cv_z(k)+cv_int);
  33. %             p_n = sum(ind_x & ind_y & ind_z);
  34. %             cv_V(j,i,k)= p_n;
  35. %         end
  36. %     end
  37. % end
  38. %
  39. % save Mat_cv.mat

  40. load Mat_cv.mat
  41. cv_V=smooth3(cv_V,'box',3);

  42. % potential( u can mod the value with your style  ---------------------
  43. cv_V=-log(cv_V./sum(cv_V(:)));
  44. tm = cv_V(cv_V~=Inf);
  45. cv_V(cv_V==Inf)=max(tm);
  46. cv_V=cv_V-min(cv_V(:));
  47. cv_V(cv_V>3.7)=NaN;

  48. % slice u want 2 plot ---------------------------------------
  49. xslice =  cv_x(1:1:n_cv);
  50. yslice =  cv_y(1:1:n_cv);
  51. zslice =  cv_z(1:1:n_cv);

  52. h=slice(cv_X,cv_Y,cv_Z,cv_V,xslice,yslice,zslice);
  53. for i = 1:3*n_cv
  54. set(h(i),'EdgeColor','none','FaceColor','interp',...
  55.    'FaceAlpha',0.01+0.008*(n_cv-mod(i,n_cv))) ;
  56. end

  57. % set only one alpha value ----------------------------------
  58. % set(h,'EdgeColor','none','FaceColor','interp',...
  59. %    'FaceAlpha',0.2) ;

  60. % choose the colormap u want ---------------------------------
  61. colormap(flipud(hot))
  62. % colormap((hot))

  63. % just figure setting -----------------------------------------
  64. axis tight equal
  65. set(gca,'GridLineStyle',':')
  66. box on
  67. ax=gca;
  68. ax.BoxStyle = 'full';
  69. grid on
  70. axis([-pi pi -pi pi -pi pi])
  71. view(20,20)

  72. h = gcf;
  73. fig_na=['./file_3d_grid_hot'];
  74. fun_work_li_035_myfig_out(h,fig_na,3)

  75. %% logs
  76. % mod : 2017年 09月 20日 星期三 09:15:39 CST
  77. % if u have question about this code. contact me
  78. % meatball1982@163.com
  79. %
复制代码


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|Mathematica中文论坛-非官方 ( 辽ICP备16001491号-1

GMT+8, 2024-3-29 10:28 , Processed in 0.121971 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表