修改饼图标签的字体大小

时间:2017-11-13 11:07:28

标签: plot octave matlab-figure pie-chart labels

我正在使用饼图的简单脚本,但我无法更改饼图标签的字体大小。有没有一种简单的方法来改变它?

以下是我的绘图代码:

h = pie ([0.1,0.1,0.1,0.1,0.1], {"unlikely","possible","likely","very likely","certain"});
y = 0; 
n = 1; 

colormap([1 1 n;    %// unlikely
          1 1 y;    %// possible
          1 1 y;    %// likely
          1 1 y;    %// very unlikely
          1 1 n;])  %// certainly
ax = gca();
set(ax,'fontsize', 18);
view([270, -90])

2 个答案:

答案 0 :(得分:0)

变量h包含五个Patch个对象的数组,这些对象与5个Text个对象交织在一起。使用以下命令设置文本对象的所有字体大小。

set(h(2:2:end),'FontSize',16);

答案 1 :(得分:0)

要以编程方式设置特定类型的图形元素的fontsize或任何其他属性,您应使用 findobj() 函数查找此类型的所有元素。然后,您可以使用单个set命令来设置属性。在你的例子中,你必须写:

set(findobj(h,'type','text'),'fontsize',18)

这将更改饼图中所有文本元素的所有字体大小。

完整示例

我调整了你的例子以显示效果:

h = pie ([0.1,0.1,0.1,0.1,0.1], {"unlikely","possible","likely","very likely","certain"});
y = 0; 
n = 1; 

colormap([1 1 n;    %// unlikely
          1 1 y;    %// possible
          1 1 y;    %// likely
          1 1 y;    %// very unlikely
          1 1 n;])  %// certainly

view([270, -90])
set(findobj(h,'type','text'),'fontsize',18);

图形输出

Graphical output of pie chart after font resizing