matlab制作饼图pie pie3

目录

  • 前言
  • pie3(x)
  • pie3(x,explode)
  • pie3(x,explode,label)
  • title(); legend();
  • 指定文本标签+饼图百分比
  • pie3(ax,——)
  • 参考

前言

matlab画饼图函数:pie()二维饼图,pie3()三维饼图,下面以pie3为例具体介绍一下函数用法(pie函数用法相同)。

pie3(x)

1、当X中元素的和大于1时,则pie3通过X/sum(X)对值进行归一化,以确定饼中的每个切片的面积。
例如:
x = [1,3,0.5,2.5,2]; %饼图数据
pie3(x); %画3维图

效果如下:
matlab制作饼图pie pie3_第1张图片
2、当X中元素的和小于等于1时,则pie3通过X中的值直接指定饼图切片的面积。 其中如果sum(X) < 1, pie3只绘制部分饼。
例如:
x = [0.1,0.5,0.2];
pie3(x);

效果如下:
matlab制作饼图pie pie3_第2张图片

pie3(x,explode)

若要偏移第n个饼图切片,请将相应的explosion元素设置为1。 explode中元素与x中元素顺序相对应。
例如
x = [1,3,0.5,2.5,2];
explode = [0,1,0,0,0];%将第二个饼图切片偏移出来。
pie3(x,explode);

效果如下:
matlab制作饼图pie pie3_第3张图片

pie3(x,explode,label)

创建一个3-D饼图并指定文本标签。
例如
x = 1:3;
labels = {‘Taxes’,‘Expenses’,‘Profit’}; %用大括号,每个x中元素对应的标签
explode = [1,0,1];
pie3(x,explode,labels); %如果不需要切片偏移,可以不输入explode参数

效果如下:
matlab制作饼图pie pie3_第4张图片

title(); legend();

为饼图添加标题,图例

例如
x = [1,3,0.5,2.5,2]; %饼图数据
pie3(x); %画3维图
title(‘饼图’); %图的标题
matlab制作饼图pie pie3_第5张图片
x = [1,3,2]; %饼图数据
pie3(x); %画3维图
legend(‘a’,‘b’,‘c’); %图例
matlab制作饼图pie pie3_第6张图片

指定文本标签+饼图百分比

x = [1,3,2]; %饼图数据
p=pie3(x); %画3维图
pText = findobj(p,‘Type’,‘text’);%取文本字符串
percentValues = get(pText,‘String’); %读出文本字符串的值
txt = {'a ';'b ';'c '};
combinedtxt = strcat(txt,percentValues);
pText(1).String = combinedtxt(1);%更新文本字符串的值
pText(2).String = combinedtxt(2);%更新文本字符串的值
pText(3).String = combinedtxt(3);%更新文本字符串的值

效果如下:
matlab制作饼图pie pie3_第7张图片

pie3(ax,——)

绘制到ax指定的坐标轴,而不是当前的坐标轴(gca)。 选项ax可以放在前面语法中的任何输入参数组合的前面。

X = [0.2 0.4 0.4];
labels = {‘Taxes’,‘Expenses’,‘Profit’};
ax1 = subplot(1,2,1);
pie3(ax1,X,labels);
title(ax1,‘2012’);

Y = [0.24 0.46 0.3];
ax2 = subplot(1,2,2);
pie3(ax2,Y,labels);
title(ax2,‘2013’);

效果如下:
matlab制作饼图pie pie3_第8张图片

参考

  1. matlab2016b帮助文档
  2. https://zhuanlan.zhihu.com/p/179041014

你可能感兴趣的:(编程语言/技术,matlab,开发语言)