ich kann leider die Achsenbeschriftung nicht umbenennen (siehe Codebeispiel: setLabels()).
In der Doku von Qt steht:
QAbstract3DAxis::labels https://doc.qt.io/qt-5/qabstract3daxis.html#labels-prop
This property holds the labels for the axis.
Note: Setting this property for QValue3DAxis does nothing, as it generates labels automatically.
Wie kann ich die automatische Generierung ausschalten bzw. eigene Achsennamen vergeben?
Code: Alles auswählen
#include <QtDataVisualization>
using namespace QtDataVisualization;
int main(int argc, char **argv)
{
QGuiApplication app(argc, argv);
Q3DSurface surface;
surface.setFlags(surface.flags() ^ Qt::FramelessWindowHint);
QSurfaceDataArray *data = new QSurfaceDataArray;
QSurfaceDataRow *dataRow1 = new QSurfaceDataRow;
QSurfaceDataRow *dataRow2 = new QSurfaceDataRow;
// Punkte einer Pyramide
*dataRow1 << QVector3D(0,0,0) << QVector3D(1,0,0);
*dataRow2 << QVector3D(0,0,1) << QVector3D(1,1,1);
*data << dataRow1 << dataRow2;
QSurface3DSeries *series = new QSurface3DSeries;
series->dataProxy()->resetArray(data);
series->setDrawMode(QSurface3DSeries::DrawSurfaceAndWireframe);
surface.addSeries(series);
surface.show();
QStringList yLab; //QValue3DAxisFormatter
yLab << "a" << "b" << "c" << "d" << "e" << "f";
surface.axisY()->setLabels(yLab);
return app.exec();
}