Shading a delimited area in a contour plot
3 次查看(过去 30 天)
显示 更早的评论
Hi,
I am looking for ways which I could shade part of a countour plot with marks. Perhaps the visual cues below could help to understand the problem:
E = 23;
F = 0:0.01:0.3;
K = round(6:0.2:20, 2);
[X, Y] = meshgrid(F, K);
RedFreq = (E * X) ./ Y;
figure;
contourf(X, Y, RedFreq);
% clabel(heatmap);
colormap('sky'); % Set colormap (e.g., 'jet', 'hot', 'cool', etc.)
colorbar; % Display colorbar
xline(0.1, 'Color', 'red', 'LineStyle', '--', 'LineWidth', 1.25);
xline(0.25, 'Color', 'red', 'LineStyle', '--', 'LineWidth', 1.25);
% xregion(0, 0.1, FaceColor="b",EdgeColor=[0.4 0 0.7])
% colorbar; % Display colorbar
grid off
hold off
The result I get is the following:
I would like to achieve the something like this:
That is, the region up to the vertical line in 0.1 would be shaded by these little dotted marks and I would also like to add that region to the legend.
0 个评论
采纳的回答
Voss
2023-11-9
Maybe something like this. Adapt as needed.
E = 23;
F = 0:0.01:0.3;
K = round(6:0.2:20, 2);
[X, Y] = meshgrid(F, K);
RedFreq = (E * X) ./ Y;
figure;
contourf(X, Y, RedFreq);
hold on
Npts = 70;
xx = 0.1*rand(1,Npts);
yl = ylim();
yy = yl(1)+(yl(2)-yl(1))*rand(1,Npts);
h = plot(xx,yy,'s','Color',[0.5 0.5 0.5],'MarkerFaceColor',[0.5 0.5 0.5]);
% clabel(heatmap);
colormap('sky'); % Set colormap (e.g., 'jet', 'hot', 'cool', etc.)
colorbar; % Display colorbar
xline(0.1, 'Color', 'red', 'LineStyle', '--', 'LineWidth', 1.25);
xline(0.25, 'Color', 'red', 'LineStyle', '--', 'LineWidth', 1.25);
% xregion(0, 0.1, FaceColor="b",EdgeColor=[0.4 0 0.7])
% colorbar; % Display colorbar
grid off
hold off
legend(h,'Legend')
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Colormaps 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!