matlab三角形分割,MATLAB 2014b及以上版本中带有画家渲染器的三角形拆分补丁
在解決實際問題之前,這是一個值得懷疑的解決方法:
對角線只是三角形之間的空白區域,所以我們看到的是補丁后面的白色空間.愚蠢的想法:
讓我們用匹配的顏色填充該空間而不是白色.
為此,我們將復制所有對象,并通過一個tiiiiny位來抵消新對象.
碼:
hist(randn(1,1000));
colorbar('Location','SouthOutside');
print('test.pdf','-dpdf'); %// print original for comparison
f1 = gcf;
g = get(f1,'children');
n = length(g);
copyobj(g,f1); %// copy all figure children
復制的對象現在是2 * n f1.Children數組中的前n個元素.它們完全位于舊對象之上.
g=get(f1,'children');
for i=1:n;
if strcmpi(g(i).Type,'axes');
set(g(i),'color','none','position',g(i).Position+[0.0001 0 0 0]);
set(g(i+n),'position',g(i+n).Position); %// important!
end;
end;
print('test2.pdf','-dpdf');
說明:
g = get(f1,’children’);獲取當前圖形中的所有軸,顏色條等.
colorbar對象鏈接到一個軸,這就是為什么我們只需要移動軸類型的子項.
將顏色設置為none會使新軸的背景透明(因為它們位于舊軸的頂部).
g(i).Position [0.0001 0 0 0]將新軸向右移動0.0001標準化單位.
set(g(i n),’position’,g(i n).Position);這條線似乎沒必要,但下面的最后一張圖顯示了打印時如果不包含它會發生什么.
根據您繪制的圖形對象的類型,您可能需要調整它以滿足您自己的需要,但如果您只有colorbar和axes對象,則此代碼應該有效.
原版的:
隨著hack:
沒有%//重要!線:
總結
以上是生活随笔為你收集整理的matlab三角形分割,MATLAB 2014b及以上版本中带有画家渲染器的三角形拆分补丁的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 浙江天台坦头镇新电瓶车在什么单位上牌照?
- 下一篇: android 创建文件夹_Androi