Mengatur ukuran gambar grafik


91

Yang ingin saya lakukan adalah membuat lebar lebih besar dan tinggi lebih kecil. Saya hanya melakukan plot raster tetapi pertanyaan ini berlaku untuk MATLAB mana pun figure. Saya dapat mengubah ukurannya secara manual menggunakan gambar secara langsung saat dibuat tetapi saya ingin program mengeluarkannya dalam ukuran yang tepat untuk memulai.

Jawaban:


81

Properti yang dapat disetel untuk a figuredireferensikan di sini .

Anda kemudian dapat menggunakan:

figure_number = 1;
x      = 0;   % Screen position
y      = 0;   % Screen position
width  = 600; % Width of figure
height = 400; % Height of figure (by default in pixels)

figure(figure_number, 'Position', [x y width height]);

12
Dan bagaimana Anda bisa menyimpan gambar dengan dimensi yang sama dengan yang ditentukan set? As saveas(gcf, file, 'png')menggunakan dimensi default sebagai gantinya.
István Zachar


64

Tuliskan sebagai satu baris :

figure('position', [0, 0, 200, 500])  % create new figure with specified size  

masukkan deskripsi gambar di sini


31
 figure (1)
 hFig = figure(1);
 set(gcf,'PaperPositionMode','auto')
 set(hFig, 'Position', [0 0 xwidth ywidth])
 plot(x,y)
 print -depsc2 correlation.eps;       % for saving in eps, look up options for saving as png or other formats you may need

Ini menghemat gambar dalam dimensi yang ditentukan


8
1 untuk 'PaperPositionMode' Anda perlu 'mencetak' (mengekspor) gambar.
Ali

1

Saya berhasil mendapatkan hasil yang baik dengan urutan berikut (jalankan Matlab dua kali di awal):

h = gcf; % Current figure handle
set(h,'Resize','off');
set(h,'PaperPositionMode','manual');
set(h,'PaperPosition',[0 0 9 6]);
set(h,'PaperUnits','centimeters');
set(h,'PaperSize',[9 6]); % IEEE columnwidth = 9cm
set(h,'Position',[0 0 9 6]);
% xpos, ypos must be set
txlabel = text(xpos,ypos,'$$[\mathrm{min}]$$','Interpreter','latex','FontSize',9);

% Dump colored encapsulated PostScript
print('-depsc2','-loose', 'signals');

0

Pendekatan yang berbeda.
Saat figure()panggilan tentukan properti atau ubah properti pegangan gambar setelahnya h = figure().

Ini membuat gambar layar penuh berdasarkan unit yang dinormalisasi.
figure('units','normalized','outerposition',[0 0 1 1])

The unitsproperti dapat disesuaikan dengan inci, sentimeter, piksel, dll

Lihat figure dokumentasi .

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.