How to save the scatter plot with and without transparency
4 views (last 30 days)
Show older comments
Turbulence Analysis
on 4 Mar 2023
Commented: Turbulence Analysis
on 4 Mar 2023
Hi,
I need to save the scatter graph plotted with the same data but one with transparency applied and the other without transparency. Although the below code saves both the figures, however, gca styles are only applied on the second plot (i.e. the one with transparency)
a=figure;
scatter(F2(:,2),F3(:,3),0.1,F4(:,5));
b=figure;
scatter(F2(:,2),F3(:,3),0.1,F4(:,5),'MarkerFaceAlpha',0.2,'MarkerEdgeAlpha',0.2);
set(gca, 'FontSize', 10)
set(gca,'fontname','Arial')
set(gca, 'fontweight', 'bold')
saveas(a,'X_1.emf')
saveas(b,'X_2.emf')
0 Comments
Accepted Answer
Star Strider
on 4 Mar 2023
The gca function (of course) is ‘get current axes’, and it does exactly that. One option is to save an axes reference in each scatter call, and the other is to refer to the plot Parent. Either will work.
One approach —
F2 = randi(9,50,5); % Create Data
F3 = randi(9,50,5); % Create Data
F4 = randi(9,50,5); % Create Data
a=figure;
scatter(F2(:,2),F3(:,3),10,F4(:,5));
Axa = gca;
b=figure;
scatter(F2(:,2),F3(:,3),10,F4(:,5),'MarkerFaceAlpha',0.2,'MarkerEdgeAlpha',0.2);
Axb = gca;
set([Axa,Axb], 'FontSize', 10)
set([Axa,Axb],'fontname','Arial')
set([Axa,Axb], 'fontweight', 'bold')
% saveas(a,'X_1.emf')
% saveas(b,'X_2.emf')
And with that change, the set calls apply to both of them.
The saveas calls threw an error because .emf is not a recognised extension, and they threw an error that prevented the code from running, so I commented them out so it would.
.
5 Comments
More Answers (1)
Sulaymon Eshkabilov
on 4 Mar 2023
Edited: Sulaymon Eshkabilov
on 4 Mar 2023
Use exportgraphics() and also, note where the set() command for figure a and b is used and where exportgraphics() is used, e.g.:
F2 = repmat((1:10)', 1, 5);
F3 = F2.^2+2*F2-5;
F4 = sqrt(F3);
a = figure;
surf(F3)
set(gca, 'FontSize', 10)
set(gca,'fontname','Courier')
set(gca, 'fontweight', 'bold')
aX=gca;
aX.XColor='k';
aX.YColor='g';
aX.ZColor='m';
exportgraphics(a, 'a.emf', 'ContentType', 'image', 'BackGroundColor', 'white'); % White background
b=figure;
surfc(abs(F4))
set(gca, 'FontSize', 10)
set(gca,'fontname','Arial')
set(gca, 'fontweight', 'bold')
bX=gca;
bX.XColor='r';
bX.YColor='g';
bX.ZColor='b';
xlabel('x', 'Color','r')
ylabel('y', 'Color','g')
zlabel('z', 'Color','b')
exportgraphics(b, 'b.emf', 'ContentType', 'image', 'BackgroundColor', 'yellow'); % yellow background
0 Comments
See Also
Categories
Find more on Printing and Saving in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!