首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在MATLAB绘图上设置特定数量的刻度线

在MATLAB绘图上设置特定数量的刻度线
EN

Stack Overflow用户
提问于 2014-03-20 04:14:31
回答 1查看 24.1K关注 0票数 5

我正在尝试弄清楚如何在我在MATLAB中创建的绘图的x轴上设置自定义数量的刻度线,但我不确定这是否可行。我看到this question似乎也在问同样的问题,但这个答案没有什么帮助,因为

代码语言:javascript
代码运行次数:0
运行
复制
set(gca,'XTick',tickVector);

设置记号的位置,而不是记号的数量。我的代码如下。

代码语言:javascript
代码运行次数:0
运行
复制
rangeBegin = 100000;
rangeEnd = 200000;
numberOfXTicks = 5;

plot(data(:, 1));
xAxisVals = linspace(rangeBegin, rangeEnd, numberOfXTicks);
%set(gca,'XTick',rangeBegin:rangeEnd); % Doesn't work as expected
set(gca,'XTickLabel',xAxisVals);

所以在这个例子中,我只是在寻找一种方法来强制MATLAB在x轴上创建具有5个刻度的图,以便与我设置的5个XTickLabels相匹配。

数据是一个双精度数组,大致为<3000x1>。

编辑:我还应该补充说,我希望我的x轴值来自单独的数组。上面显示的数据数组对应一个时间数组(不是shown...my bad),数据数组中的每个值在时间数组中都有一个相应值。由于我从数据数组中选择了一个范围,因此我希望选择相应的时间值并将其用作x标签。但很明显,我不想让3000个时间标签出现在我的x轴上。希望这一点更清楚。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-20 04:33:37

代码语言:javascript
代码运行次数:0
运行
复制
numberOfXTicks = 5;

h = plot(data(:, 1));
xData = get(h,'XData');
set(gca,'Xtick',linspace(xData(1),xData(end),numberOfXTicks))
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22517098

复制
相关文章

相似问题

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