QCPAxis::addAxis添加的纵坐标轴setoffset()不能平移,想同时显示三条y轴,setoffset的偏移量如何得出,我想偏移y轴的一半长度
7条回答 默认 最新
- 语言-逆行者 2023-04-11 10:57关注
基于new Bing的回答:
QCPAxis::addAxis() 函数添加的纵坐标轴是一个独立的轴对象,可以通过调用 setOffset() 函数设置轴的偏移量,但是该函数不能用于平移轴。如果需要平移轴,可以通过调整 QCustomPlot 对象中的坐标轴范围来实现。可以使用以下函数:
QCPAxis::setRange():设置轴的范围。
QCustomPlot::axisRect():获取绘图区域对象。
QCPAxisRect::axis(QCPAxis::AxisType type):获取指定类型的轴对象。
QCPAxis::range():获取轴的范围。
例如,以下代码将 y 轴向右平移 50 个像素:
QCPAxis *yAxis = plot->yAxis; QCPAxisRect *axisRect = plot->axisRect(); double range = yAxis->range().size(); yAxis->setRange(0, range); axisRect->setMargins(QMargins(50, 0, 0, 0));
首先获取 y 轴对象和绘图区域对象,然后获取 y 轴的范围。接下来将 y 轴的范围设置为从 0 开始,这样 y 轴的原点就移动到了绘图区域的左边界。最后调用 setMargins() 函数将绘图区域的左边距设置为 50 个像素,这样 y 轴就向右平移了 50 个像素。
解决 无用评论 打赏 举报
悬赏问题
- ¥15 R语言卸载之后无法重装,显示电脑存在下载某些较大二进制文件行为,怎么办
- ¥15 java 的protected权限 ,问题在注释里
- ¥15 这个是哪里有问题啊?
- ¥15 关于#vue.js#的问题:修改用户信息功能图片无法回显,数据库中只存了一张图片(相关搜索:字符串)
- ¥15 texstudio的问题,
- ¥15 spaceclaim模型变灰色
- ¥15 求一份华为esight平台V300R009C00SPC200这个型号的api接口文档
- ¥15 字符串比较代码的漏洞
- ¥15 欧拉系统opt目录空间使用100%
- ¥15 ul做导航栏格式不对怎么改?