2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Неплавающее окружение в LaTex
Сообщение16.03.2011, 19:39 


12/03/11
16
Здравствуйте господа....У меня следующая проблема...Вставляю рисунки в LaTex мне нужны их подписи, т.е. нумерация, но {figure} не подходит т.к это плавающее окружение, а мне нужно надписи в определенных местах....Спасибо....

 Профиль  
                  
 
 Re: Неплавающее окружение в LaTex
Сообщение17.03.2011, 02:14 
Заслуженный участник
Аватара пользователя


23/07/05
17973
Москва
Если верить написанному у Львовского, то команда

Используется синтаксис LaTeX
\begin{figure}[h]
\includegraphics[width=50mm]{Fig_gr3}\hfill\includegraphics[height=50mm]{Fig_gr4}\\ \parbox{50mm}{\caption{$0<k<3-2\sqrt{2}$}\label{F3}}\hfill\parbox{50mm}{\caption{$k=3-2\sqrt{2}$}\label{F4}}
\end{figure}

должна вставлять рисунок именно в том месте, где она находится.
Здесь команда \caption генерирует подпись, а \label - номер рисунка, на который можно ссылаться командой \ref. В моём случае получилось примерно так: два рисунка, а под ними - соответствующие подписи
Рис. 3: $0<k<3-2\sqrt{2}\qquad\qquad\qquad\qquad\qquad\qquad$ Рис. 4: $k=3-2\sqrt{2}$

 Профиль  
                  
 
 
Сообщение17.03.2011, 09:06 


12/03/11
16
Дело все в том, что получается немного не так....Действительно вставляется рисунок, но если он в конце страницы и не помещается, то он переносится на следующую, а текст идущий за ним переносится на прежнюю страницу, потому что так есть место....

 Профиль  
                  
 
 
Сообщение17.03.2011, 10:31 


29/09/06
4552
Найдите/подключите стиль here (here.sty) и сделайте так:
\begin{figure}[H] % <--- Большая Буква H
......
\end{figure}

 Профиль  
                  
 
 Re: Неплавающее окружение в LaTex
Сообщение17.03.2011, 15:48 


12/03/11
16
В таком случае картинку просто не видно т.е. она не выводится совсем.....Может быть нужна какая-нибудь библиотека?

 Профиль  
                  
 
 
Сообщение17.03.2011, 19:45 


29/09/06
4552
Ну, не знаю. ПОльзовался давно, всё было легко и просто. Я нашёл в старых файлах кусок кода из этого стиля, который я тогда просто выкрал и скопировал в преамбулу:
Код:
\makeatletter
%                From here.sty
\ifx\@Hxfloat\@Hundef\else\expandafter\endinput\fi
\let\@Hxfloat\@xfloat
\def\@xfloat#1[{\@ifnextchar{H}{\@HHfloat{#1}[}{\@Hxfloat{#1}[}}
\def\@HHfloat#1[H]{%
\expandafter\let\csname end#1\endcsname\end@Hfloat
\vskip\intextsep\def\@captype{#1}\parindent\z@
\ignorespaces}
\def\end@Hfloat{\vskip \intextsep}
\makeatother
И всё нормально работало.
Что ни подписи, ни пустого места под картинку?

 Профиль  
                  
 
 Re: Неплавающее окружение в LaTex
Сообщение17.03.2011, 20:07 


12/03/11
16
Нет, совсем не выделяет место, как и не было....

-- Чт мар 17, 2011 20:32:40 --

Код никак не помог.....

Имею следующий код:

\documentclass{article}
\usepackage[utf8x]{inputenc}
\usepackage[warn]{mathtext}
\usepackage[russian]{babel}
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{geometry}
\usepackage{mathrsfs}
\usepackage{amssymb}
\usepackage{graphicx}
\makeatletter
% From here.sty
\ifx\@Hxfloat\@Hundef\else\expandafter\endinput\fi
\let\@Hxfloat\@xfloat
\def\@xfloat#1[{\@ifnextchar{H}{\@HHfloat{#1}[}{\@Hxfloat{#1}[}}
\def\@HHfloat#1[H]{%
\expandafter\let\csname end#1\endcsname\end@Hfloat
\vskip\intextsep\def\@captype{#1}\parindent\z@
\ignorespaces}
\def\end@Hfloat{\vskip \intextsep}
\makeatother
\geometry{left=2cm}
\geometry{right=2cm}
\geometry{top=2cm}
\geometry{bottom=2cm}
\begin{document}
\begin{center}
Лабараторная работа \No405
\end{center}
\begin{center}
{\bf ПРЕОБРАЗОВАНИЕ фУРЬЕ В ОПТИКЕ}
\end{center}
\texttt{{\small {\bf В работе используются:} гелий-неоновый лазер, кассета с набором сеток разного периода, щель с микрометрическим винтом, линзы, экран, линейка.}}

\vspace{6mm} {\bf А. Определение ширины щели}
\begin{center}
{\small {I. Определение ширины щели с помощью линзы}}
\end{center}
\begin{center}
\begin{figure}[htb]
\center{\includegraphics[width=0.5\linewidth]{image1}}
\caption{Схема для определения ширины щели с помощью линзы}
\label{ris:image1}
\end{figure}
\end{center}

{\bf 1.Зависимость размера щели $D_{1}$ от ширины щели D}
\begin{table}[htb]
\caption{Зависимость размера щели D от ширины щели D}
\label{primer}
\begin{center}
\begin{tabular}{|c||c|}
\hline
D$\times 10$мкм&$D_{1}$,mm\\
\hline
7&0\\
\hline
25&3\\
\hline
37&4\\
\hline
55&5\\
\hline
64&8\\
\hline
75&11\\
\hline
100&17\\
\hline
108&21\\
\hline
138&27\\
\hline
\end{tabular}
\end{center}
\end{table}

{\bf 2.Определение увеличение системы}
\begin{center}
\[
Г=\frac{D_{1}}{D}
\]
\end{center}

Увеличение линзы $\equiv$ коэффициенту наклона графика. Определим коэффициент наклона.

\begin{table}[htb]
\caption{Коэффициент наклона}
\label{primer}
\begin{center}
\begin{tabular}{|l|r|}
\hline
<D>&10.667\\
\hline
<$D_{1}$>&67.667\\
\hline
$S^{2}_{D}$&74.444\\
\hline
$S^{2}_{D_{1}}$&1587.555\\
\hline
$R_{DD_{1}}$&337.000\\
\hline
a&2.263\\
\hline
$\Delta$a&0.712\\
\hline
\end{tabular}
\end{center}
\end{table}
\begin{figure}[h]
\center{\includegraphics[width=0.8\linewidth]{lab2}}
\caption{Зависимость ширины щели от размера изображения}
\label{ris:lab2}
\end{figure}

Тогда увеличение системы:
\begin{center}
Г=(2.3$\pm$0.7)$\times10^{1}$
\end{center}
{\bf 3.Определение ширины щели}

L=$a_{1}$+$b_{1}$=140 см

$F_{1}$=38 мм

\begin{center}
$ Г=\frac{b_{1}}{a_{1}}$
\end{center}
\begin{center}
$ Г=\frac{3.8}{136.2}$=35.8
\end{center}

Тогда ширина входной щели:
\begin{center}
$D_{л}=\frac{D_{1}}{Г}$
\end{center}
\begin{table}[htb]
\caption{Ширина щели $D_{л}$ }
\label{primer}
\begin{center}
\begin{tabular}{|c|c|c|}
\hline
D$\times 10$мкм&$D_{1}$,mm&$D_{л}\times 10^{-2}$,mm\\
\hline
7&0&0\\
\hline
25&3&8.4\\
\hline
37&4&11.2\\
\hline
55&5&14.0\\
\hline
64&8&22.4\\
\hline
75&11&30.7\\
\hline
100&17&47.5\\
\hline
108&21&58.7\\
\hline
138&27&75.4\\
\hline
\end{tabular}
\end{center}
\end{table}

\vspace{6mm} {\bf Б.Определение периода решеток}
\begin{center}
{\small {I. Определение периода по спектру на удаленном экране}}
\end{center}
Расстояние от кассеты до экрана:

L=134$\pm$1 см
\begin{table}[htb]
\caption{Расстояние X между m-ми максимумами }
\label{primer}
\begin{center}
\begin{tabular}{|c|c|c|}
\hline
X,мм&m&№\\
\hline
39&2& \\
\cline{1-2}
72&5& \\
\cline{1-2}
43&3&6\\
\cline{1-2}
14&1& \\
\hline
30&1&\\
\cline{1-2}
58&2&5\\
\cline{1-2}
87&3&\\
\hline
40&1&\\
\cline{1-2}
58&2&4\\
\cline{1-2}
87&3&\\
\hline
37&1&\\
\cline{1-2}
73&2&3\\
\cline{1-2}
108&3&\\
\hline
76&1&\\
\cline{1-2}
148&2&2\\
\hline
9&1&\\
\cline{1-2}
18&2&\\
\cline{1-2}
27&3&1\\
\cline{1-2}
34&4&\\
\cline{1-2}
43&5&\\
\hline
\end{tabular}
\end{center}
\end{table}



Нужно чтобы на странице все было тоже все в этом порядке...А после компиляции получается, что часть текста идет раньше.....

 Профиль  
                  
 
 
Сообщение17.03.2011, 22:27 


29/09/06
4552
У меня всё получилось (кроме русских букв в формулах).
Я Вам уже писал, теперь выделяю цветом:
Алексей К. в сообщении #423796 писал(а):
\begin{figure}[H] % <--- Большая Буква H

Плохо, не по-ТеХовски делать так:
Код:
\begin{center}
\begin{figure}[htb]
\center{\includegraphics[width=0.5\linewidth]{image1}}
\caption{Схема для определения ширины щели с помощью линзы}
\label{ris:image1}
\end{figure}
\end{center}
Странно помещать плавающий объект в такое окружение (удивительно, что не ругается). У Вас есть команда центрирования внутри фигуры.
Можно так:
Код:
\begin{figure}[H]
\centering%
\includegraphics[width=0.5\linewidth]{image1}
\caption{Схема для определения ширины щели с помощью линзы}
\label{ris:image1}
\end{figure}

Вот это
Код:
Тогда увеличение системы:
\begin{center}
Г=(2.3$\pm$0.7)$\times10^{1}$
\end{center}
пишется так:
Код:
Тогда увеличение системы:
$$\Gamma=(2.3\pm0.7)\times10^1$$

Заполучить русские буквы в фомулах с помощью этого пакета (mathtext.sty) мне так и не удалось.
Это можно сделать командами типа $$ 24\text{л} +24\text{м}^2 =5\dfrac{\text{км}}{\text{час}}$$

 Профиль  
                  
 
 
Сообщение18.03.2011, 01:08 


12/03/11
16
Ну я ведь говорю, если поставить "H", то картинки просто нету.....

 Профиль  
                  
 
 
Сообщение18.03.2011, 10:03 


13/02/11
29
Возможно, есть смысл подключить пакет placeins и сразу после рисунка поставить команду вывести все плавающие объекты?
Код:
\usepackage[section]{placeins} % чтобы плавающие объекты не выходили за пределы своей секции
...
\begin{figure}[!h]
\centering
\includegraphics[width=0.5\linewidth]{image1}
\caption{Схема для определения ширины щели с помощью линзы}
\label{ris:image1}
\end{figure}
\FloatBarrier

 Профиль  
                  
 
 
Сообщение18.03.2011, 11:24 


29/09/06
4552
alex_long в сообщении #424106 писал(а):
Ну я ведь говорю, если поставить "H", то картинки просто нету.....
Всё работает и на форумном Латехе:


Updated: С учётом замечания .Serj., удаляю свой громоздкий пример.

 Профиль  
                  
 
 Re: Неплавающее окружение в LaTex
Сообщение18.03.2011, 11:36 


12/03/11
16
Но у меня ее нет....В чем причина может быть?

 Профиль  
                  
 
 Re: Неплавающее окружение в LaTex
Сообщение18.03.2011, 11:49 


29/09/06
4552
Не знаю. Я во внутренностях ТеХ'а не особо разбираюсь. Здесь иногда предлагают выложить лог-файлы.
Сами их внимательно посмотрите, может чего-то увидите.
Моё предыдущее сообщение возьмите, скопируйте, засуньте его между \begin{document} и \end{document}, откомпилируйте...

 Профиль  
                  
 
 Re: Неплавающее окружение в LaTex
Сообщение18.03.2011, 11:56 


12/03/11
16
algia спасибо, все работает...

 Профиль  
                  
 
 
Сообщение19.03.2011, 09:37 
Аватара пользователя


01/02/09
206
Кстати, о here.sty. Его не надо подключать, он устарел:
Используется синтаксис LaTeX
% (Public domain.)
%
% The original here.sty by David Carlisle was withdrawn many years ago.
% The [H] modifier is now implemented in float.sty, which this here.sty
% simply reads.  Another option is to use a float specifier [!ht], which
% usually has the same effect, and keeps floats in the right order.  The
% present trivial here.sty merely allows old documents to keep running.
%
% --Karl Berry, November 2009.
\RequirePackage{float}
 

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 15 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: petrovsky


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group