关于QGraphicsView Chart中的纵坐标轴对齐问题

关于上一篇的文章是几个chart的轴对齐问题,现将解决的方法分享给大家,

1.出现这种问题,跟自己纵轴的取值设置有关系,如果每个chart的纵轴设置的数据范围是不一样的,就会导致几个纵轴的数据有的长,有的短,然后坐标系就不会对齐了。

2.这是我们可以想到Qt里面关于QValueAxis系列的方法,里面有一个方法叫setLabeLFormat,设置坐标系上的数据的显示方式,这时就可以将nbsp(表示空格)添加进去,类似于以下这种:

axis.setLabelFormat("  %010.f"):首先在离坐标轴填充上两个空格,后面的数字意思是:如果不够10位数,就在前面补0。

3.最后想说的是,这个方法并不是最好的,最好的应该的是对chart的坐标系设置CSS,但是目前没有找到这类型的方法。如果有这类型的方法话,希望大家不吝赐教。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
QGraphicsView可以通过以下步骤绘制坐标轴: 1. 创建一个QGraphicsScene对象,并将其设置为QGraphicsView的场景。 2. 创建两个QGraphicsLineItem对象,分别表示x轴和y轴。 3. 将这两个QGraphicsLineItem对象添加到QGraphicsScene。 4. 设置QGraphicsView的视图范围,使其包含整个坐标轴。 5. 可以通过设置QGraphicsLineItem对象的颜色、线宽等属性来美化坐标轴。 示例代码如下: ```python from PyQt5.QtWidgets import QGraphicsView, QGraphicsScene, QGraphicsLineItem from PyQt5.QtCore import Qt, QPointF class MyView(QGraphicsView): def __init__(self): super().__init__() self.setScene(QGraphicsScene(self)) self.draw_axis() def draw_axis(self): # 创建x轴和y轴 x_axis = QGraphicsLineItem(-100, , 100, ) y_axis = QGraphicsLineItem(, -100, , 100) # 设置颜色和线宽 x_axis.setPen(Qt.red) y_axis.setPen(Qt.blue) x_axis.setPenWidth(2) y_axis.setPenWidth(2) # 添加到场景 self.scene().addItem(x_axis) self.scene().addItem(y_axis) # 设置视图范围 self.setSceneRect(-100, -100, 200, 200) ``` 在这个例子,我们创建了一个MyView类,它继承自QGraphicsView,并在构造函数调用了draw_axis()方法来绘制坐标轴。在draw_axis()方法,我们创建了两个QGraphicsLineItem对象,分别表示x轴和y轴,并设置了它们的颜色和线宽。然后将它们添加到场景,并设置视图范围,使其包含整个坐标轴。最后,我们将MyView类的实例设置为主窗口的心部件,以便显示坐标轴
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值