Я искал решение часами, как - включая этот форум. Может быть, кто-то может указать мне правильное направление, это становится действительно раздражающим.
По сути, я хочу сделать то же самое: Большая картинка с несколькими картинками поменьше сбоку
Мне нужно 7 картинок на одной странице, 3 в ряд, затем 1 в середине, затем 3 в ряд:
ххх
_Икс
ххх
средняя картинка очень большая, и я не могу заставить ее а) отображаться вообще (без ошибок) или б) отображаться, но не выравниваться правильно/перекрываться с другими картинками
текущий код:
\documentclass[landscape]{article}
\usepackage{subfigure}
\usepackage{graphicx}
\usepackage[a4paper]{geometry}
\input{setup/header.tex}
\begin{document}
\pagenumbering{gobble}
\begin{figure}[!htbp]
\centering
\fbox{\subfigure{
\subfigure{\includegraphics[scale = 0.3]{testdata.png}}
\subfigure{\includegraphics[scale = 0.3]{testdata.png}}
\subfigure{\includegraphics[scale = 0.3]{testdata.png}}
}}
\fbox{\centerline{\subfigure{\includegraphics[scale = 0.003]{testpic.png}}}}
\fbox{\subfigure{
\subfigure{\includegraphics[scale = 0.3]{testdata.png}}
\subfigure{\includegraphics[scale = 0.3]{testdata.png}}
\subfigure{\includegraphics[scale = 0.3]{testdata.png}}
}}
\end{figure}
\end{document}
Я всегда получаю какие-то ошибки, когда пытаюсь исправить масштабирование, или изображение больше не отображается. Маленькие работают. Я добавил fbox, чтобы увидеть контуры боксов — средний слишком мал, что бы я ни делал, и обычно смещается. К тому же он перевернут — я бы даже не обращал на это внимания (угол = 180, я знаю, после этого выравнивание стало еще хуже)
Буду очень признателен за любую помощь. У меня около 150 картинок, и я не хочу начинать копировать их в Office (планирую написать скрипт на Python, чтобы получить tex-код для всех картинок сразу, но для этого этот tex-код должен работать)
EDIT: этот код просто не отображает картинку:
\documentclass[landscape]{article}
\usepackage{graphicx}
\usepackage[a4paper]{geometry}
%\input{setup/header.tex}
\begin{document}
\begin{figure}[!htbp]
\centering
\fbox{\includegraphics[scale = 0.3]{testdata.png}
\includegraphics[scale = 0.3]{testdata.png}
\includegraphics[scale = 0.3]{testdata.png}
}
\fbox{\includegraphics[width = 4cm]{testpic.png}}
\fbox{\includegraphics[scale = 0.3]{testdata.png}
\includegraphics[scale = 0.3]{testdata.png}
\includegraphics[scale = 0.3]{testdata.png}
}
\end{figure}
\end{document}
этот код вызывает ошибку «Размеры слишком большие»:
\documentclass[landscape]{article}
\usepackage{graphicx}
\usepackage[a4paper]{geometry}
%\input{setup/header.tex}
\begin{document}
\begin{figure}[!htbp]
\centering
\fbox{\includegraphics[scale = 0.3]{testdata.png}
\includegraphics[scale = 0.3]{testdata.png}
\includegraphics[scale = 0.3]{testdata.png}
}
\fbox{\includegraphics[width = 5cm]{testpic.png}}
\fbox{\includegraphics[scale = 0.3]{testdata.png}
\includegraphics[scale = 0.3]{testdata.png}
\includegraphics[scale = 0.3]{testdata.png}
}
\end{figure}
\end{document}
решение1
Я нашел решение своей проблемы. Спасибо за предоставление правильного кода для заказа, но в этом случае по какой-то причине изменение размера картинки (даже на мизерную величину) устранило ошибку "Размеры слишком большие". Думаю, какие-то метаданные в картинке все испортили (может быть, потому что это SEM-картинка в масштабе 270k?). В любом случае, теперь работает
Я использовал этот инструмент изменения размера:http://www.faststone.org/FSResizerDetail.htm
Спасибо всем за помощь, иначе я бы, наверное, сдался :) Я, наверное, когда-нибудь напишу небольшой урок по обработке больших объемов данных и изображений с использованием Gnuplot и LaTeX. Далее следует скрипт Python для генерации кода LaTeX для всех изображений (~150) :)
EDIT: если кому-то интересно, вот код Python, который я использовал для генерации большого количества кода LaTeX:
f = open('Hex06.tex', 'w')
hex = 'Hex06'
print('\n')
print('writing Hex06.tex .....\n')
for field in ['03_2h3h','03_23','04_6h5','04_36h','04_55h','06_55h','07_6h5','07_44h','07_55h','07_66h','06_6h5','07_5hh4','07_34','09_13','16_12','08_16']:
if(field == '03_2h3h'):seg = '0'
if(field == '03_23'):seg = '0'
if(field == '04_6h5'):seg = '0'
if(field == '04_36h'):seg = '0'
if(field == '04_55h'):seg = '0'
if(field == '06_55h'):seg = '0'
if(field == '07_6h5'):seg = '0'
if(field == '07_44h'):seg = '0'
if(field == '07_55h'):seg = '0'
if(field == '07_66h'):seg = '0'
if(field == '06_6h5'):seg = '1'
if(field == '07_5hh4'):seg = '1'
if(field == '07_34'):seg = '1'
if(field == '09_13'):seg = '1'
if(field == '16_12'):seg = '1'
if(field == '08_16'):seg = '2'
f.write('\n')
f.write('\\begin{figure}[!htbp]\n')
f.write('\centering\n')
f.write('\\fbox{\includegraphics[scale = 0.7]{' + hex + '/2P_UI_all-currents_' + hex + '_'+seg+'seg_field'+field+'_+15V.png}\n')
f.write(' \includegraphics[scale = 0.7]{' + hex + '/2P_UI_all-currents_' + hex + '_'+seg+'seg_field'+field+'_0V.png}\n')
f.write(' \includegraphics[scale = 0.7]{' + hex + '/2P_UI_all-currents_' + hex + '_'+seg+'seg_field'+field+'_-15V.png}\n')
f.write('}\n')
f.write('\n')
f.write('\\fbox{\includegraphics[scale = 1]{' + hex + '/SEM-pics/resized/' + hex + '-done_field'+field+'.png}\n')
f.write('\\textbf{{\Huge '+hex+' '+seg+'-Au-Segments}}}')
f.write('\n')
f.write('\\fbox{\includegraphics[scale = 0.7]{' + hex + '/2P_TR_all-currents_' + hex + '_'+seg+'seg_field'+field+'_+2V.png}\n')
f.write(' \includegraphics[scale = 0.7]{' + hex + '/2P_TR_all-currents_' + hex + '_'+seg+'seg_field'+field+'_0V.png}\n')
f.write(' \includegraphics[scale = 0.7]{' + hex + '/2P_TR_all-currents_' + hex + '_'+seg+'seg_field'+field+'_-2V.png}\n')
f.write(' }\n')
f.write('\end{figure}\n')
f.write('\\newpage\n')
f.write('\n')
f.close()
print('done with Hex06.tex, starting Hex07.tex.....\n')
f = open('Hex07.tex', 'w')
hex = 'Hex07'
for field in ['06_41','06_56','08_4h5h','08_45','11_16','14_21','14_66h','18_6h1h','06_15','09_23','18_16h','14_16']:
if(field == '06_41'):seg = '0'
if(field == '06_56'):seg = '0'
if(field == '08_4h5h'):seg = '0'
if(field == '08_45'):seg = '0'
if(field == '11_16'):seg = '0'
if(field == '14_21'):seg = '0'
if(field == '14_66h'):seg = '0'
if(field == '18_6h1h'):seg = '0'
if(field == '06_15'):seg = '1'
if(field == '09_23'):seg = '1'
if(field == '18_16h'):seg = '1'
if(field == '14_16'):seg = '2'
f.write('\n')
f.write('\\begin{figure}[!htbp]\n')
f.write('\centering\n')
f.write('\\fbox{\includegraphics[scale = 0.7]{' + hex + '/2P_UI_all-currents_' + hex + '_'+seg+'seg_field'+field+'_+15V.png}\n')
f.write(' \includegraphics[scale = 0.7]{' + hex + '/2P_UI_all-currents_' + hex + '_'+seg+'seg_field'+field+'_0V.png}\n')
f.write(' \includegraphics[scale = 0.7]{' + hex + '/2P_UI_all-currents_' + hex + '_'+seg+'seg_field'+field+'_-15V.png}\n')
f.write('}\n')
f.write('\n')
f.write('\\fbox{\includegraphics[scale = 1]{' + hex + '/SEM-pics/resized/' + hex + '_field'+field+'.png}\n')
f.write('\\textbf{{\Huge '+hex+' '+seg+'-Ni-Segments}}}')
f.write('\n')
f.write('\\fbox{\includegraphics[scale = 0.7]{' + hex + '/2P_TR_all-currents_' + hex + '_'+seg+'seg_field'+field+'_+2V.png}\n')
f.write(' \includegraphics[scale = 0.7]{' + hex + '/2P_TR_all-currents_' + hex + '_'+seg+'seg_field'+field+'_0V.png}\n')
f.write(' \includegraphics[scale = 0.7]{' + hex + '/2P_TR_all-currents_' + hex + '_'+seg+'seg_field'+field+'_-2V.png}\n')
f.write(' }\n')
f.write('\end{figure}\n')
f.write('\\newpage\n')
f.write('\n')
f.close()
print('done with Hex07.tex, starting Hex10.tex.....\n')
f = open('Hex10.tex', 'w')
hex = 'Hex10'
for field in ['01_1h2','01_6h6','01_13','01_55h','02_55h','02_66h','01_5h6h','01_21','02_6h5','02_34','04_45','05_1h3','07_61','08_4h3','08_32','09_64','12_1h6','16_63']:
if(field == '01_1h2'):seg = '0'
if(field == '01_6h6'):seg = '0'
if(field == '01_13'):seg = '0'
if(field == '01_55h'):seg = '0'
if(field == '02_55h'):seg = '0'
if(field == '02_66h'):seg = '0'
if(field == '01_5h6h'):seg = '1'
if(field == '01_21'):seg = '1'
if(field == '02_6h5'):seg = '1'
if(field == '02_34'):seg = '1'
if(field == '04_45'):seg = '1'
if(field == '05_1h3'):seg = '1'
if(field == '07_61'):seg = '1'
if(field == '08_4h3'):seg = '1'
if(field == '08_32'):seg = '1'
if(field == '09_64'):seg = '1'
if(field == '12_1h6'):seg = '1'
if(field == '16_63'):seg = '1'
f.write('\n')
f.write('\\begin{figure}[!htbp]\n')
f.write('\centering\n')
f.write('\\fbox{\includegraphics[scale = 0.7]{' + hex + '/2P_UI_all-currents_' + hex + '_'+seg+'seg_field'+field+'_+15V.png}\n')
f.write(' \includegraphics[scale = 0.7]{' + hex + '/2P_UI_all-currents_' + hex + '_'+seg+'seg_field'+field+'_0V.png}\n')
f.write(' \includegraphics[scale = 0.7]{' + hex + '/2P_UI_all-currents_' + hex + '_'+seg+'seg_field'+field+'_-15V.png}\n')
f.write('}\n')
f.write('\n')
f.write('\\fbox{\includegraphics[scale = 1]{' + hex + '/SEM-pics/resized/' + hex + '_Au-seg_field'+field+'.png}\n')
f.write('\\textbf{{\Huge '+hex+' '+seg+'-Au-Segments}}}')
f.write('\n')
f.write('\\fbox{\includegraphics[scale = 0.7]{' + hex + '/2P_TR_all-currents_' + hex + '_'+seg+'seg_field'+field+'_+2V.png}\n')
f.write(' \includegraphics[scale = 0.7]{' + hex + '/2P_TR_all-currents_' + hex + '_'+seg+'seg_field'+field+'_0V.png}\n')
f.write(' \includegraphics[scale = 0.7]{' + hex + '/2P_TR_all-currents_' + hex + '_'+seg+'seg_field'+field+'_-2V.png}\n')
f.write(' }\n')
f.write('\end{figure}\n')
f.write('\\newpage\n')
f.write('\n')
f.close()
print('done with Hex10.tex\n')
print('\n')
print('pleasure to do business with you\n')
print('see you next time\n')
print('\n')