首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使图像足够大,以避免勾标重叠?

如何使图像足够大,以避免勾标重叠?
EN

Stack Overflow用户
提问于 2010-09-09 03:05:58
回答 2查看 3.3K关注 0票数 5

假设数据X的大小为1000 *1000。X使用以下命令显示:

代码语言:javascript
复制
imagesc(X);

而且所有的行都是用以下方式进行标记的:

代码语言:javascript
复制
set(gca, 'YTickLabel', somelabels);

虽然数据X被正确地轮询,并且还显示了Ytick标签,但由于行数较多,标签高度重叠。有什么办法解决这个问题吗?任何帮助都将不胜感激。

编辑1

我意识到我的问题没有很好地表达来代表我的问题。我将根据答案总结我的理解,然后再问一个问题:

  1. 若要在图形窗口中显示尽可能多的行/标签,请执行以下操作: 集(gca,'FontSize',6),或,交替距离(由yuk建议),或,set(gca,'YTick',1:10:1000,'YTickLabel',set(1:10:1000));
  2. 密码 设置(gca,“单位”,“像素”,“位置”,20 20 10000 10000); 默认情况下将显示放大的图像。但是,如果放大后的图像太大,无法在图形窗口中显示,则只显示图像的一部分。但是,无论是缩放还是pan工具都不能到达该图像的其余部分。
  3. 代码的默认行为。 imagesc(X);set(gca,'ytick',1:1000,'yticklabe',ylabel); 用重叠标签显示与图形窗口相匹配的整个图像。尽管如此,它确实允许放大图像的一部分,并看到未重叠的标签。
  4. 如果我将图像保存到pdf文件中: imagesc(X);set(gca,'ytick',1:1000,‘yticklabe,ylabel’);saveas(gcf,'fig.pdf'); 然后保存的pdf只是与重叠标签的图形窗口相匹配的图像。但是,与Matlab图形窗口中的缩放不同,在pdf阅读器中放大不会改变标签的相对位置/距离。因此,pdf格式的放大图像仍然是标签重叠的。

所以我的问题是:

如何将图像保存到pdf文件或png中,使其在Adobe读取器中打开时具有与上面第3点相似的行为,而不是在第4点。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-09-09 03:45:30

你也可以玩轴标签字体,使它更小。

代码语言:javascript
复制
set(gca,'FontSize',6)

还请参阅其他轴特性以更改字体-- FontName、FontWidth、FontUnits等。

另一个解决方案:如果标签很短,您可以在那里与轴相交,这样标签就不会重叠。请检查此示例:

代码语言:javascript
复制
lbl = cellstr(reshape(sprintf('%3d',1:100),3,100)');
lbl(1:2:100) = strcat(lbl(1:2:100),{'     '});
imagesc(rand(100))
set(gca,'ytick',1:100)
set(gca,'yticklabel',lbl)

部分结果图像:

更新

回答你最新的问题。

  1. PDF文档只能包含静态图像。一旦将图形保存到PDF (或任何其他图形文件),就不能像使用MATLAB图形工具那样放大/缩小。
  2. 你可以先放大MATLAB的图形,然后保存PDF文件。在这种情况下,数字将按原样保存。但这种方式假设用户与图形具有交互性。
  3. 如果预先知道您感兴趣的区域,可以使用XLim/YLim属性设置轴限制,然后保存图。

示例:

代码语言:javascript
复制
imagesc(X);
set(gca, 'ytick', 1:1000, 'yticklabe', ylabel);
set(gca, 'XLim',[1 20], 'YLim', [20 40])
saveas(gcf, 'fig.pdf');

顺便说一句,您还可以使用打印函数保存图形文件。更灵活。SAVEAS只是它的包装。

代码语言:javascript
复制
print('-dpdf','fig.pdf')
票数 4
EN

Stack Overflow用户

发布于 2010-09-09 04:35:17

另一种选择是旋转这个技术解决方案中讨论的滴答标签。您可以在MATLAB文件交换上找到一些易于使用的实现.

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3673491

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档