Q3DBars 在一个角落有垂直标签,可能吗?

Posted

技术标签:

【中文标题】Q3DBars 在一个角落有垂直标签,可能吗?【英文标题】:Q3DBars with vertical labels in just one corner, possible? 【发布时间】:2019-08-25 08:22:18 【问题描述】:

这是剧情

这是代码

.pro

QT      += core gui widgets datavisualization
TEMPLATE = app
SOURCES += main.cpp mainwindow.cpp
HEADERS += mainwindow.h

main.cpp

#include "mainwindow.cpp"
#include <QApplication>

int main(int argc, char *argv[]) 
    QApplication a(argc, argv);
    MainWindow w;
    w.show();
    return a.exec();

主窗口.h

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>

class MainWindow : public QMainWindow 
    Q_OBJECT
public:
    MainWindow(QWidget *parent = 0);
    ~MainWindow();
;

#endif // MAINWINDOW_H

主窗口.cpp

#include "mainwindow.h"
#include <QMainWindow>

#include <QtDataVisualization/Q3DBars>
using namespace QtDataVisualization;

MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) 
    resize(800,600);
    Q3DBars *graph = new Q3DBars;
    setCentralWidget(QWidget::createWindowContainer(graph));
    graph->scene()->activeCamera()->setCameraPosition(30,30);
    graph->activeTheme()->setGridLineColor(Qt::red);


MainWindow::~MainWindow()

我可以在一个角落而不是两个角落有垂直轴(值轴)的标签吗?

【问题讨论】:

【参考方案1】:

添加自定义标签:

auto graph = new Q3DBars;
auto container = QWidget::createWindowContainer(graph);
setCentralWidget(container);

auto label = new QCustom3DLabel;
graph->addCustomItem(label);
label->setText("text");
label->setPosition(QVector3D(0,0.5,0));
label->setTextColor(Qt::red);
label->setScaling(QVector3D(1,1,1));

【讨论】:

以上是关于Q3DBars 在一个角落有垂直标签,可能吗?的主要内容,如果未能解决你的问题,请参考以下文章

Sencha Touch - 在面板中水平放置而不是垂直放置的标签

如何使用自动布局使两个标签垂直居中

Android中的垂直(旋转)标签

输入标签上的 Flexbox 垂直对齐问题

Android 垂直标签主机

Plotly Sankey 图中的附加标签