Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在条形图中设置条形的透明度,并将y轴设置为对数刻度-但两者都不';似乎在MATLAB中不起作用_Matlab_Matlab Figure - Fatal编程技术网

在条形图中设置条形的透明度,并将y轴设置为对数刻度-但两者都不';似乎在MATLAB中不起作用

在条形图中设置条形的透明度,并将y轴设置为对数刻度-但两者都不';似乎在MATLAB中不起作用,matlab,matlab-figure,Matlab,Matlab Figure,在MATLAB中,我想将条形图中条形的透明度设置为0.3,并将y轴设置为对数比例-但两者似乎都不起作用 subplot('Position',[0.15 0.7 0.45 0.15]); data = [1 2 5 4 7 4 1]; B = bar(data,'g'); ch = get(B,'child'); set(ch,'facea',.3) 这很好,但再加上: set(gca,'YScale','log'); 而且透明度设置不起作用。有什么想法吗?谢谢 对数刻度轴和透明度在Matl

在MATLAB中,我想将条形图中条形的透明度设置为0.3,并将y轴设置为对数比例-但两者似乎都不起作用

subplot('Position',[0.15 0.7 0.45 0.15]);
data = [1 2 5 4 7 4 1];
B = bar(data,'g');
ch = get(B,'child');
set(ch,'facea',.3)
这很好,但再加上:

set(gca,'YScale','log');

而且透明度设置不起作用。有什么想法吗?谢谢

对数刻度轴和透明度在Matlab中不起作用

为什么? OpenGl渲染器(必须用于透明度)不支持对数轴-这显然是在2010b的文档中,也提到过

解决方案 通过转换数据和设置Yaxis刻度模拟日志轴

下面的代码使用对数轴绘制条形图,获取所需属性,清除轴,然后使用信息模拟对数轴
代码:

唯一的损失是勾号标签的格式设置。

最后,当应用于负面数据时,我不能保证任何事情,尽管它几乎肯定会抛出警告,并且不能正常工作

我几乎确信这是一个错误。@Trilarion更多的是一个限制,而不是一个错误请参阅谢谢@RTL!如果我有x数据和y数据呢?例如,B=bar(log(datax,datay),'g')不起作用。。。再次感谢!哎呀,我的错。这就是:B=bar(x,(log(y)),'g')。再次感谢。
subplot('Position',[0.15 0.7 0.45 0.15]);
data = [1 2 5 4 7 4 1];
B = bar(data,'g');
set(gca,'Yscale','log')
ticks=get(gca,'Ytick');
ticklabel=str2num(get(gca,'YtickLabel'));
set(gca,'Yscale','linear')
cla

B = bar(log(data),'g');
set(gca,'Ytick',log(ticks));set(gca,'YtickLabel',10.^ticklabel)
ch = get(B,'child');
set(ch,'facea',.3)