tableをpdfに保存する方法

조회 수: 6 (최근 30일)
萌香
萌香 2022년 6월 20일
답변: Hiro Yoshino 2022년 6월 21일
こんにちは。
画像処理をしており、
・処理した画像
・画像から検出したオブジェクトのプロパティ値(面積等)を並べたテーブル
・プロパティ値のヒストグラム
を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
Hernia Baby
Hernia Baby 2022년 6월 20일
バージョンによって提案内容が異なると思います。お手数ですが、お使いのバージョンを教えてください。
萌香
萌香 2022년 6월 20일
편집: 萌香 2022년 6월 20일
コメントありがとうございます。R2022aを使っております。

댓글을 달려면 로그인하십시오.

답변 (2개)

Hernia Baby
Hernia Baby 2022년 6월 20일
おそらく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 2022년 6월 21일
コードを書かなくても、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 出力されます。

카테고리

Help CenterFile Exchange에서 イメージ에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!