Wie bringe ich das Identisch-Symbol auf die gleiche Höhe des Mesomeriepfeils?

Die Beschriftung der beiden Grenzstrukturen des ortho-Xylols befindet sich innerhalb der beiden eckigen Klammern. Die Beschriftung sollte außerhalb auf Höhe der Beschriftung rechts sein. Das gelingt bei den Grenzstrukturen des Anilins einfach, wenn man die Beschriftung außerhalb der scheme-Umgebung platziert.

Letztere Grenzstrukturen sind noch nicht vollständig ausformuliert. Das wäre dann eine der nächsten Fragen.

alt text

Öffne in Overleaf
\documentclass{article}         
\usepackage{chemfig}
\setatomsep{2em}

\begin{document}

{\centering
\schemestart
$\chemleft[\chemname{\chemfig{*6(-=(-CH_3)-(-CH_3)=-=)}}{\hspace{4.2cm}2 Grenzstrukturen des \emph{ortho}-Xylols}
\hspace{.25cm}\subscheme{\arrow{<->[][][8pt]}[,.75]}\hspace{.25cm}
\chemfig{*6(=-(-CH_3)=(-CH_3)-=-)}\chemright]\hspace{.5cm}\equiv\hspace{.5cm}
\chemname{\chemfig{**6(--(-CH_3)-(-CH_3)---)}}{\emph{ortho}-Xylol\\(1,2-Dimethylbenzol)}$
\schemestop
\par\vspace{36pt}
\schemestart
$\chemleft[\chemfig{*6(@{C1}=@{C2}-@{C3}=@{C4}-@{C5}(-\lewis{4,N}H_2)=@{C6}-)}
\hspace{.2cm}\subscheme{\arrow{<->[][][8pt]}[,.55]}\hspace{.1cm}
\chemfig{*6(@{B1}-@{B1}=@{B3}-@{B4}=@{B5}(-\lewis{4,N}H_2)-@{B6}-)}
\hspace{.2cm}\subscheme{\arrow{<->[][][8pt]}[,.55]}\hspace{.1cm}
\chemfig{*6(@{A1}=@{A2}-@{A3}-@{A4}=@{A5}(-\lewis{4,N}H_2)-@{A6}-)}
\hspace{.2cm}\subscheme{\arrow{<->[][][8pt]}[,.55]}\hspace{.1cm}
\chemfig{*6(=-=-(-\lewis{4,N}H_2)--)}
\hspace{.2cm}\subscheme{\arrow{<->[][][8pt]}[,.55]}\hspace{.1cm}
\chemfig{*6(=-=-(=\chemabove{N}{\oplus}H_2)--)}\chemright]$
\schemestop
\par\vspace{12pt}
5 Grenzstrukturen des Anilins\par}

\end{document}

gefragt 05 Sep, 05:30

Delorian's gravatar image

Delorian
23919
Akzeptiert: 25%

bearbeitet 06 Sep, 17:40

1

Das ist meines Wissens ein bisschen tricky, weil chemfig die Baseline immer auf die Baseline des ersten Atoms setzt. Klar, das kann man umgehen, aber leider gibt es in Deinem Beispiel nicht unbedingt ein Atom oder eine Node, die sich für die Baseline anbietet. Eine Möglichkeit ist, per Hand nachzuhelfen, etwa indem man \equiv durch \raisebox{8pt}{$\equiv$} ersetzt.

(05 Sep, 23:45) Murmeltier

Vielleicht am besten die Bilder und Zeichen isolieren und dann in wenigstens eine Matrix stecken. Habe es hier jetzt nicht auf Anhieb hinbekommen; aber ich kenne mich mit chemfig auch nicht aus.

(22 Sep, 15:06) cis

Du kannst natürlich perfekt zentrierte Pfeile und \equivs platzieren. chemfig baut auf TikZ auf und merkt sich die Bilder mit remember picture. Du weisst das wohl schon Alles, sonst würdest Du ja vermutlich nicht die @ Syntax verwenden, die es Dir erlaubt, den Nodes Namen zu geben. Eine Möglichkeit, damit den zentrierten Pfeile und das equiv im ersten Bild einzubauen, ist im folgenden Code realisiert.

Öffne in Overleaf
\documentclass{article}         
\usepackage{chemfig}
\usetikzlibrary{calc}
\setatomsep{2em}

\begin{document}
{\centering
\schemestart
$\chemleft[\chemname{\chemfig{*6(-=(-@{C1}CH_3)-(-@{C2}CH_3)=-=)}
\hspace{1.25cm}
\chemfig{*6(=-(-CH_3)=(-CH_3)-=-)}
%
}{2 Grenzstrukturen des \emph{ortho}-Xylols}
\chemright]\tikz[overlay,remember picture]{\coordinate(L);}\hspace{1.25cm}%
\tikz[overlay,remember picture]{\coordinate(R);}
\chemname{\chemfig{**6(--(-CH_3)-(-CH_3)---)}}{\emph{ortho}-Xylol\\(1,2-Dimethylbenzol)}$
\schemestop
\par\vspace{36pt}
\tikz[overlay,remember picture]{
\draw[stealth-stealth] ($(C1)!0.5!(C2)+(0.7,0)$) coordinate(aux) -- ++ (1,0);
\path (L|-aux) -- (R|-aux) node[midway]{$\equiv$};
}
% \schemestart
% $\chemleft[\chemfig{*6(@{C1}=@{C2}-@{C3}=@{C4}-@{C5}(-\lewis{4,N}H_2)=@{C6}-)}
% \hspace{.2cm}\subscheme{\arrow{<->[][][8pt]}[,.55]}\hspace{.1cm}
% \chemfig{*6(@{B1}-@{B1}=@{B3}-@{B4}=@{B5}(-\lewis{4,N}H_2)-@{B6}-)}
% \hspace{.2cm}\subscheme{\arrow{<->[][][8pt]}[,.55]}\hspace{.1cm}
% \chemfig{*6(@{A1}=@{A2}-@{A3}-@{A4}=@{A5}(-\lewis{4,N}H_2)-@{A6}-)}
% \hspace{.2cm}\subscheme{\arrow{<->[][][8pt]}[,.55]}\hspace{.1cm}
% \chemfig{*6(=-=-(-\lewis{4,N}H_2)--)}
% \hspace{.2cm}\subscheme{\arrow{<->[][][8pt]}[,.55]}\hspace{.1cm}
% \chemfig{*6(=-=-(=\chemabove{N}{\oplus}H_2)--)}\chemright]$
% \schemestop
% \par\vspace{12pt}
% 5 Grenzstrukturen des Anilins\par
}

\end{document}

alt text

Ich habe die drei schemes zu einem kombiniert, damit man keine manuellen Shifts für die Unterschrift braucht. Dann benutzeich die calc library, um den Pfeil und das \equiv vertical genau zwischen die Kohlenstoffatome zu platzieren. Im Prinzip kann man den Pfeil horizontal auch wie das \equiv genau mittig platzieren, mir ist nur nicht klar, ob das gut aussieht.

Den zweiten Teil Deines Codes habe ich ignoriert, weil mir nicht klar ist, was da die Frage ist. Aber ich bin gerne bereit, mir das ebenfalls anzuschauen, wenn Du mir die Frage besser erklärst.

Permanenter link

beantwortet 22 Sep, 17:12

Murmeltier's gravatar image

Murmeltier
1.9k64

@Murmeltier Ich mache zum zweiten Teil des Codes Codes einen neuen thread auf. Der Code war hier nur zur Illustration beigefügt, wegen der Beschriftung von Grenzstrukturen, die bei den Grenzstrukturen des Anilins ohne Schwierigkeiten gelingt, da die sich bei mir über den gesamten Satzspeigel ausdehnen.

(12 Okt, 05:16) Delorian

Ein chemfig-Schema ist ja letztlich nichts anderes als ein tikzpicture und die einzelnen „Compounds“ und „Subschemes“ sind Knoten/Nodes im Sinne von TikZ, d.h., man kann auf auf sie referenzieren, um anderes Material zu platzieren. Um nachzusehen, wie die Knoten heißen, bietet chemfig \setchemfig{scheme debug=true}. Dann ginge folgendes:

Öffne in Overleaf
\documentclass{article}

\usepackage{chemfig}
\setchemfig{
  atom sep = 2em ,
  arrow offset = 1em
}

\providecommand*\ortho{\textit{ortho}}

\begin{document}

\begin{center}
  % \setchemfig{scheme debug = true}
  \schemestart
    \chemleft[%
      \subscheme{%
        \chemfig{*6(-=(-CH_3)-(-CH_3)=-=)}
        \arrow{<->}
        \chemfig{*6(=-(-CH_3)=(-CH_3)-=-)}
      }%
    \chemright]%
    \arrow{0}[,.2]$\equiv$\arrow{0}[,.2]
    \chemfig{**6(--(-CH_3)-(-CH_3)---)}
  \schemestop
  \chemmove{
    \node[below] at (c1.south) {2 Grenzstrukturen des \ortho-Xylols} ;
    \node[below,align=center] at (c1.south-|c5) {\ortho-Xylol\\(1,2-Dimethylbenzol)} ;
  }
\end{center}

\end{document}

alt text

PS: die ganzen überflüssigen \hspaces habe ich entfernt, den Mathemodus auf \equiv beschränkt und statt {\centering ... \par} bietet sich doch LaTeXs center-Umgebung an.

Permanenter link

beantwortet 17 Okt, 05:18

Clemens's gravatar image

Clemens
20.4k153461

bearbeitet 17 Okt, 05:24

Falls alle Stricke reissen: Mach die Zeichnungen mit ChemDraw (bekommt man von der Uni aus meist) oder Chemsketch und beschrifte das dort. Die Zeichnungen kann man dann mit FreePDF ("Drucker") als pdf exportieren und als Bild in Latex einfügen. png-Dateien werden zumindest bei mir immer zerschossen, deswegen der Umweg über FreePDF. Bei Änderungen muss dann auch nur die jeweilige Datei geändert und erneut exportiert werden, der Zeitaufhand hierfür sobald mans raushat ist sehr gering. :)

Permanenter link

beantwortet 22 Sep, 11:45

Mel's gravatar image

Mel
16

Hier kommt eine mögliche Lösung. Setzt man die Beschriftung der Grenzstrukturen des o-Xylols außerhalb schemestart/schemestop kann man sie mit hspace/vspace zurechtrücken. Nicht gerade schlank, aber es funktioniert.

Öffne in Overleaf
\documentclass{article}         
\usepackage{chemfig}
\setatomsep{2em}

\begin{document}

{\centering
\schemestart
$\chemleft[\chemfig{*6(-=(-CH_3)-(-CH_3)=-=)}
\hspace{.25cm}\subscheme{\arrow{<->[][][8pt]}[,.75]}\hspace{.25cm}
\chemfig{*6(=-(-CH_3)=(-CH_3)-=-)}\chemright]\hspace{.5cm}\raisebox{7pt}{$\equiv$}\hspace{.5cm}
\chemname{\chemfig{**6(--(-CH_3)-(-CH_3)---)}}{\emph{ortho}-Xylol\\(1,2-Dimethylbenzol)}$
\schemestop
\par\vspace{-10.5pt}
\hspace{-4cm}2 Grenzstrukturen des \emph{ortho}-Xylols\par\vspace{36pt}
}

\end{document}

alt text

Permanenter link

beantwortet 12 Okt, 05:21

Delorian's gravatar image

Delorian
23919

bearbeitet 12 Okt, 05:59

Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×33
×17

Frage gestellt: 05 Sep, 05:30

Frage wurde angeschaut: 704 Mal

Zuletzt aktualisiert: 13 Nov, 14:26