【发布时间】:2014-06-18 23:26:49
【问题描述】:
将 matlab 时间序列图保存为 png 时出现问题。内部 matlab 窗口显示的 xticks 数量是保存图像的一半。这会导致保存的绘图中出现重叠的刻度标签。
这是一个示例最小代码:
data = (1:12);
time(1,:) = '10-Sep-2012 13:42:10';
time(2,:) = '10-Sep-2012 13:43:10';
time(3,:) = '10-Sep-2012 13:44:10';
time(4,:) = '10-Sep-2012 13:45:10';
time(5,:) = '10-Sep-2012 13:46:10';
time(6,:) = '10-Sep-2012 13:47:10';
time(7,:) = '10-Sep-2012 13:48:10';
time(8,:) = '10-Sep-2012 13:49:10';
time(9,:) = '10-Sep-2012 13:50:10';
time(10,:) = '10-Sep-2012 13:51:10';
time(11,:) = '10-Sep-2012 13:52:10';
time(12,:) = '10-Sep-2012 13:53:10';
ts = timeseries(data,time);
ts.TimeInfo.Format = 'dd, HH:MM:SS';
figure(1)
plot(ts);
%saveas(gca, 'tickmovetest', 'png')
print(gcf, '-dpng', 'tickmovetest')
无论我使用 plot 还是 saveas 命令都没有关系。 data 只是随机数,time 是一个等长的向量,包含像 '10-Sep-2012 13:42:10' 这样的字符串。
有没有人遇到过这个问题并找到了答案? 如果 matlab 只保留它在保存绘图之前的刻度数,那就太好了。
【问题讨论】:
-
你能创建一个最小的工作示例,我可以复制/粘贴来重现你的错误吗?
-
您好 Schorsch,感谢您的回复。我离开了一段时间,抱歉我的回复晚了。我添加了几行以使代码 sn -p 更方便。约翰内斯