matlab - 在堆积条形图中添加标记
问题描述
在一些帮助下,我能够以我需要的方式实现堆叠的条形图。仅缺少一个部分:代表中位数的标记。可悲的是,我无法想出如何添加一个的任何想法,也无法在互联网上找到任何帮助。这张图片显示了我的图表以及我想如何按照显示的方式添加标记。不一定要那样,一个swaure或其他东西也可以完成这项工作。
生成绘图的代码:(breite是我导入的excel表格。您可以使用testw并删除testw = breite来测试代码)
% testw = [0.3568 0.452 0.494 0.2982 0.3892 0.675 0.576 0.489 0.745 0.225 ...
% 0.3568 0.452 0.494 0.2982 0.3892 0.675 0.576 0.489 0.745 0.225 ...
% 0.3568 0.452 0.494 0.2982 0.3892 0.675 0.576 0.489 0.745 0.225 ...
% 0.3568 0.452 0.494 0.2982 0.3892 0.675 0.576 0.489 0.745 0.225 ...
% 0.3568 0.452 0.494 0.2982 0.3892 0.675 0.576 0.489 0.745 0.225 ...
% 0.3568 0.452 0.494 0.2982 0.3892 0.675 0.576 0.489 0.745 0.225 ...
% 0.3568 0.452 0.494 0.2982 0.3892 0.675 0.576 0.489 0.745 0.225 ...
% 0.3568 0.452 0.494 0.2982 0.3892 0.675 0.576 0.489 0.745 0.225 ...
% 0.3568 0.452 0.494 0.2982 0.3892 0.675 0.576 0.489 0.745 0.225 ...
% 0.3568 0.452 0.494 0.2982 0.3892 0.675 0.576 0.489 0.745 0.225 ];
testw = breite;
%Datenvorbereitung
gerundet = round(testw,1);
maximum = max(gerundet),1;
anzahl = ceil(maximum / 0.1);
werte = zeros([1 anzahl]);
sz = size(werte);
haeufigkeit = zeros(sz);
for i= 1:anzahl
werte(i) = 0.1*i;
end
wertebereich = zeros(sz);
for i = 1:anzahl
wertebereich(i) = 0.1;
end
%Häufigkeitsverteilung
for i = 1:10000
if gerundet(i) <= 0.2
haeufigkeit(1) = haeufigkeit(1) + 1
else
for j = 2:anzahl
if gerundet(i) >= werte(j-1) && gerundet(i) < werte(j)
haeufigkeit(j) = haeufigkeit(j) + 1
end
end
end
end
%Grauwerte
prozentual = zeros(sz);
for i = 1:anzahl
prozentual(i) = haeufigkeit(i)/sum(haeufigkeit)
end
grauwerte = zeros(sz);
for i = 1:anzahl
grauwerte(i) = round(1-1*prozentual(i),3);
end
colormap gray
b = bar([wertebereich; nan(size(wertebereich))],'stacked');
% colorbar('Direction','reverse')
colorbar('Ticks',[0, 0.2, 0.4, 0.6 ,0.8, 1],...
'TickLabels',{'100%','80%','60%','40%','20%', '0%'})
for i = 1:anzahl
b(1,i).FaceColor = [grauwerte(i) grauwerte(i) grauwerte(i)];
b(1,i).EdgeColor = 'none';
end
解决方案
推荐阅读
- html - Winhttp .body.innerhml 不像 . 响应文本
- python - 我如何知道使用 ImageDataGeneration 和 fit_generator() 生成了多少张照片?
- python - os.listdir() 如何在非常大的文件夹上执行?
- google-cloud-platform - 如何在 Google Cloud Platform 中获取当前项目的组织 ID?
- java - 有没有更好的方法可以在继承类中处理我的 Generic BaseClass?
- angular - 如何忽略打字稿或 idm 错误?
- python - 在一条线下找到一条线
- python - 由于比例因子和偏移,导入 python 时 NetCDF 数据的精度损失
- open-liberty - OpenLiberty 许可证生产功能
- java - 如何在开始,中间和结束时匹配特定字符的正则表达式