UITable data display performance issue
Mostrar comentarios más antiguos
I have a uitable created in appdesigner and loaded with data from an SQL database. Displaying any amount of data, even as few as 100 rows and 8 columns results in very poor performance. Scrolling up and down takes on the order of seconds to render new rows of the table. Is there any way to improve the performance of the UITable display to the end user?
Please note that the data within the table is not large, mainly datetime values, integer values and short text strings with less than 10 characters.
Code for loading UITable:
tmpName = tmpTable.Properties.VariableNames;
tmpTable.StartDate = datetime(tmpTable.StartDate, 'Format', 'uuuu-MM-dd HH:mm:ss.SSSSSS');
tmpTable.EndDate = datetime(tmpTable.EndDate, 'Format', 'uuuu-MM-dd HH:mm:ss.SSSSSS');
tmpTable.StartDate.Format = 'uuuu/MM/dd HH:mm:ss'
tmpTable.EndDate.Format = 'uuuu/MM/dd HH:mm:ss'
app.DataTable.ColumnName = tmpName(1:8);
app.DataTable.Data = tmpTable(1:100,1:8);
app.DataTable.ColumnEditable = true;
Respuestas (1)
I have a similar problem with tables of 100's of rows that cannot be reduced. All the research I've done indicates that the Matlab uitable implementation handles each cell an individual class object. This gets very slow with more than a few dozen rows of data, and there's just not much to do about it until Mathworks decides to make the code more efficient.
It's possible to use an older version of uitable (pass 'v0' as an argument) that is ~10x faster, but that's long since deprecated and doesn't contain most of the new useful functionality of the modern uitable.
6 comentarios
orvar
el 23 de En. de 2019
Have you managed to find any solution to this?
bbull84
el 23 de En. de 2019
mark gabbidon
el 21 de En. de 2020
Editada: mark gabbidon
el 21 de En. de 2020
I have the same issue. Has this issue been fixed? I need to export data to excel to do any kind of analysis as App designer's table is not useable at all for anykind of table data analysis.
Aykut SIRMA
el 4 de Nov. de 2020
They still didn't fix. I have the same problem too still.
Frank Herzog
el 17 de Mayo de 2021
Same issue here. Does anybody have a solution to this?
I just noticed in the profiler that updating some values in a uitable is by far the slowest task in my code.
Categorías
Más información sobre Develop Apps Using App Designer en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!