tableをpdfに保存する方法

16 vues (au cours des 30 derniers jours)
萌香
萌香 le 20 Juin 2022
こんにちは。
画像処理をしており、
・処理した画像
・画像から検出したオブジェクトのプロパティ値(面積等)を並べたテーブル
・プロパティ値のヒストグラム
をpdfに保存しようとしています。
画像は複数枚あるため、上記処理はfor文内での処理です。
ところがtableのみうまく表示されず、空白のグラフのようなものが表示されてしまいます。
tableを図に変えればよいのかと思い下記のように試みましたが結果は変わりません。
何か方法はありますでしょうか。
stats=regionprops('table',Iclr,'Centroid','Area','MajorAxisLength');
idx=stats.Area>5000;
stats(idx,:)=[];
fig=uifigure;
uit=uitable(fig,'Data',stats);
nexttile;
uit
  2 commentaires
Hernia Baby
Hernia Baby le 20 Juin 2022
バージョンによって提案内容が異なると思います。お手数ですが、お使いのバージョンを教えてください。
萌香
萌香 le 20 Juin 2022
Modifié(e) : 萌香 le 20 Juin 2022
コメントありがとうございます。R2022aを使っております。

Connectez-vous pour commenter.

Réponses (2)

Hernia Baby
Hernia Baby le 20 Juin 2022
おそらくuifigureの範囲指定ができていないことが原因だと思われます。
簡単な例を作りましたので試してください。
clc,clear,close all;
BW = imread('text.png');
stats = regionprops('table',BW,'centroid','Area','MajorAxisLength');
idx = stats.Area > 20;
stats(idx,:)=[];
ここで'Position'を設定することで解決できるはずです。
fig = uifigure('Name','test','Position',[200 200 500 400]);
uit=uitable(fig,'Data',stats,'Position',[10 10 400 350]);
後はexportappで出力すれば完成です
exportapp(fig,'test.pdf')

Hiro Yoshino
Hiro Yoshino le 21 Juin 2022
コードを書かなくても、Live Editor の機能を使えば、そのまま pdf 出力ができます。
Live Editor を開いて
% サンプル table データ
filename = 'myCsvTable.dat';
% ;を無しにして table を表示させておきます
T = readtable(filename)
T = 5×6 table
LastName Gender Age Height Weight Smoker ____________ ______ ___ ______ ______ ______ {'Smith' } {'M'} 38 71 176 1 {'Johnson' } {'M'} 43 69 163 0 {'Williams'} {'F'} 38 64 131 0 {'Jones' } {'F'} 40 67 133 0 {'Brown' } {'F'} 49 64 119 0
imshow("football.jpg")
とした後に、リボンから
MATLAB > Live Editor > Export > pdf とすれば、talble もイメージもそのまま pdf 出力されます。

Catégories

En savoir plus sur Image Processing Toolbox dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!