Форум программистов, компьютерный форум, киберфорум
Scilab
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/25: Рейтинг темы: голосов - 25, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 07.02.2017
Сообщений: 4
1

Как максимально быстро вывести данные в таблицу (формат Excel)?

07.02.2017, 15:52. Показов 4725. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте знатоки. Нужна помощь. Столкнулся с такой проблемой: есть большущая программа, рассчитывающая множество параметров. В зависимости от изменения двух параметров, нужно составить таблицу значений третьего параметра, в зависимости от этих двух. Проще говоря, должен получиться аналог "таблицы умножения". Подскажите, максимально быстро вывести данные в таблицу?
Миниатюры
Как максимально быстро вывести данные в таблицу (формат Excel)?  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.02.2017, 15:52
Ответы с готовыми решениями:

Как перенести данные из одной таблицы в другую максимально быстро?
Всем доброго времечка! Господа, нужна ваша помощь В базе есть таблица с неотформатированными...

Не знаю как вывести данные в таблицу Excel?
public struct list { public TimeSpan time; public int CardNum; public...

Как максимально быстро вывести на экран картинку в Windows 7 через winapi на Си?
Крайне важна высокая скорость вывода на экран, т. к. картинками буду рисовать элементы интерфейса...

Как вывести Excel-таблицу в html и в html таблицу записать данные с БД?
есть у меня excel документ(таблица) , как вывести таблицу в html и в html таблицу записать данные с...

5
143 / 133 / 42
Регистрация: 11.03.2013
Сообщений: 274
08.02.2017, 03:01 2
Цитата Сообщение от name12 Посмотреть сообщение
вывести данные в таблицу?
В смысле записать в файл или вывести в консоль в виде таблицы?
0
0 / 0 / 0
Регистрация: 07.02.2017
Сообщений: 4
08.02.2017, 08:20  [ТС] 3
Если возможно, то разъясните пожалуйста оба варианта
0
143 / 133 / 42
Регистрация: 11.03.2013
Сообщений: 274
08.02.2017, 09:55 4
Цитата Сообщение от name12 Посмотреть сообщение
Если возможно, то разъясните пожалуйста оба варианта
Вариант 1: воспользоваться функцией csvWrite(М, fileName), где М - Ваша матрица данных, fileName - имя файла (можно использовать uigetfile()) куда записывать данные. Данные матрицы будут записаны в CSV формате.

Matlab M
1
csvWrite(data, uigetfile('.*csv'));
Вариант 2: Можно использовать функцию форматированного вывода: mprintf()

Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function res_table(data)
 
rows = size(data,2);
 
cust_form = '\n' + part("-",ones(1,15*rows)) + '\n';
tbl_form1 = strsubst(string(ones(1,rows+1)), '1', '|');
tbl_form = strcat(tbl_form1, '%14s');
 
mprintf(cust_form)
 
mprintf(tbl_form+cust_form,data(1,:))
 
mprintf(tbl_form+cust_form,data(2:$,:))
 
endfunction
Здесь "data" должна содержать имена столбцов и строк

например:

Matlab M
1
2
3
4
5
6
7
8
row_names = [0:10];
col_names = [1:10];
 
data = grand(10, 10, "def");
 
data = [row_names;[col_names',data]];
 
res_table(string(data));
Вариант 3 (самый продвинутый): можно использовать возможности построения GUI в SciLab, т.е. использовать функцию uicontrol() со стилем "table"

Кликните здесь для просмотра всего текста

Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
function drawTable(names, data)
//names -> row vector of strings
//data -> matrix, number of columns == size('names', 2);
 
table_fig = figure('figure_position'         ,[-1,-1],...
                         'figure_size'               ,[1020,360],...
                         'auto_resize'               ,'on',...
                         'background'               ,[150],...
                         'dockable'                    ,'off',...
                         'toolbar_visible'           ,'off',...
                         'menubar_visible'         ,'off',...
                         'default_axes'               ,'off',...
                         'layout'                         ,'gridbag',...//border
                         'figure_name'                ,'Table',...
                         'immediate_drawing'    ,'on');
 
table_fr = uicontrol(table_fig,..
                         "style"                          ,"frame",...
                         "layout"                       ,"border",...
                         "backgroundcolor"      , [0.9,0.9,0.9], ...
                         "constraints"                , createConstraints("gridbag", [1,1,1,1],[1,1],"both","left",[0,0]) );
                         
// Include an editable table into a figure:
// Building a table of data:
if names ~= [] then
    params = [" " names];
else
    params = [" " string([1:5])];
end
 
 
if data ~= [] then
    number = string([1:size(data,1)]');
    table = [params; [number, string(data)]];
else
    number = string([1:5]')
    table = [params; [number, emptystr(5,size(params,2)-1)]];
end
 
ut = uicontrol(table_fr,..
               "style","table",..
               "string",table,..
               "layout", "border",...
               'constraints', createConstraints('border', 'center'));
endfunction


Для примера можно запустить функцию с пустыми данными:

Matlab M
1
drawTable([], [])
1
0 / 0 / 0
Регистрация: 07.02.2017
Сообщений: 4
20.02.2017, 14:01  [ТС] 5
olbond, Большое спасибо за помощь. Возникла новая проблема. Почему-то scilab перестал читать функцию. drawtable. Запускаю ваш код с пустыми данными, а он пишет ошибку, что неопределенная функция, хотя недавно выдавал таблицу, при запуске функции.
0
143 / 133 / 42
Регистрация: 11.03.2013
Сообщений: 274
20.02.2017, 15:49 6
Цитата Сообщение от name12 Посмотреть сообщение
Возникла новая проблема. Почему-то scilab перестал читать функцию
Наверное Вы неправильно написали название функции drawTable
0
20.02.2017, 15:49
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.02.2017, 15:49
Помогаю со студенческими работами здесь

Перенести данные из Access в Excel быстро
Здравствуйте, Мне нужно перекачать данные из access в excel программно. У меня в бд 800 тыс...

Как в excel таблицу подсоединить данные из БД
Есть формы Excel таблиц. Требуется ежедневно заполнять их данными из базы и отправлять. Сами формы...

Как максимально быстро получать значения скорости и линейного перемещения
Всем привет. Вот уже более года изучаю в свое удовольствие всякие языки программирования и...

Как максимально быстро считать очень большой текст из файла
как максимально быстро считать ооочень большой текст из файла и поеместить в richTextBox1?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru