matlab透明度函数alpha与copyfigure不兼容

赵骏青 2019-12-21 18:12:00

推荐回答

因为你用的是copyfigure,matlab对图形窗对象的支持向来不好,你最好是最大化图形窗口,然后另存为图像,如jpg,tiff等。
黄益珩2019-12-21 18:38:42

提示您:回答为网友贡献,仅供参考。

其他回答

  • 你是复制图像到word或者是ppt中用吗?简单的解决办法:1. 选择File-->save as...-->保存为EMF格式或者JPG都可以,再复制到你要插入图片的地方;2. 在代码中添加一行,将当前窗口的图像输出为BMP或者JPG图3. 附件图片是关于复制图像的一些设置,你找到并且更改成你需要的吧。补充回答:可能是你自己写的程序的文件名有问题,或者是你的程序中调用其它函数的时候不合理;你最好用一个类似myProgram.m这样的格式来命名自己的程序。作为测试,你把你的m程序文件名代入以下这个命令:which 如果不行再执行:which  -all这样可以找到和哪个内部函数冲突了。这个问题在Mathworks公司的support网站上有比较详细的解释:Technical SolutionsWhy do I receive the error "Attempt to execute SCRIPT as a function" ?如果还是不能解决,请你把程序的主要部分贴上来吧。
    齐晓洁2019-12-21 19:12:30
  • 在copyfigure的下面有一个copyoptions,可以设置属性。其中就有背景透明的设置。
    辛国爱2019-12-21 18:55:12
  • Matlab的copy命令并不能保留图形的alpha特性。copy选项中也并不提供相应的设置来保留图形透明属性。什么是图形的alpha特性?Matlab图形的alpha值决定了显示图形的透明程度。取值0~1之间。0表示完全透明。1表示不透明。alpha属性分为边缘alpha和表面alpha。这里就以图形表面alpha为例。为了将alpha特性保留,需要用到matlab的print函数。那么什么是print函数?print函数可以将matlabfig打印输出至多种格式,例如jpeg,png,pdf,jiff,svg,等等。print还可以控制图形输出的分辨率等多种属性。如何使用print函数?以下提供matlab代码,演示如何将3D图形打印输出为jpeg格式,并保留图形的alpha特性。MatlabExampleby81144825=peaks25;h=surfX,Y,Z;%用matlab画出3D图形,并保存句柄hseth,''FaceAlpha'',0.2;%设置alpha值为0.2print-djpeg-r300alpha02.jpeg %打印图形输出到“alpha02.jpeg”注意alpha02.jpeg保存于当前工作文件夹。输出结果如下:直接copy的结果:用print打印结果:alpha02.jpeg从结果看出,print函数实现了图形的透明显示。这样alpha02.jpeg可以直接插入到任何文档中了。例如powerpoint演示文件,word等。
    黄盛松2019-12-21 18:21:35

相关问答