我有一个数据集,沿x轴有日期/时间,第一个y轴有浓度,但想在第二个y轴上以不同的浓度测量值显示等效值(比如在一个y轴上有cm)轴和英寸在另一方面。)
我从这里使用了gnovice的解决方案来添加额外的轴:Different right and left axes in a MATLAB plot? 它在屏幕上为我精彩地工作:
但是当我"打印"使用
进行PDF格式print(gcf,'-dpdf',[filename '.pdf'])
轴的下端移动,使两个范围不再等效:
生成PDF时,有没有办法将附加轴粘合到位? 我的代码中的这个图的基本内容如下:
subplot(6,1,4),
H3 = scatter(sampletime,SSCcoarse,'g<','filled')
hold on
H4 = scatter(sampletime,(SSCcoarse+SSCfine),'g<')
ylim([0 0.08])
set(gca,'ytick',[0:0.04:0.08],'yticklabel',['0.00';'0.04';'0.08'])
ylabel('SSC (g L^{-1})')
xlim([startdate enddate])
datetick('x','dd-mmm','keeplimits')
% Add data from extra site on original axis
H5 = scatter(sampletime2,SSCcoarse2,'r<','filled')
H6 = scatter(sampletime2,(SSCcoarse2+SSCfine2),'r<')
%% Add equivalent turbidity y axis
axesPosition = get(gca,'Position'); %# Get the current axes position
hNewAxes = axes('Position',axesPosition,... %# Place a new axes on top...
'Color','none',... %# ... with no background color
'YLim',[0 0.08*190.6752],... %# ... and a different scale
'YAxisLocation','right',... %# ... located on the right
'XTick',[],... %# ... with no x tick marks
'YTick',[0:5:15],'YTickLabel',['0 ';'5 ';'10';'15'],...
'Box','off'); %# ... and no surrounding box
ylabel(hNewAxes,'Equivalent turbidity (FNU)'); %# Add a label to the right y axis
%% Filename and save
filename = 'filename';
fillPage(gcf, 'margins', [0 0 0 0], 'papersize', [11 38]);
print(gcf,'-dpdf',[filename '.pdf'])
非常感谢任何帮助。我不知道问题是在图表的代码中还是在代码中,以及#34; print&#34;。谢谢。