4

enter image description here

I'm trying to generate this shape but I am having problems with connecting the nitrogen atoms with the slightly curved lines as shown in the diagram. Is there anyway using the chemfigpackage (or any other relevant package) to generate this diagram?

My code so far:

\documentclass[border=1mm]{standalone}
\usepackage{chemfig}
\begin{document}
\chemfig{[:-45]N-Fe([:-135]-N)([:45]-N)([:-45]-N)([:90,1.2]-O_2)(-[:-90,1.2]Histidine)}
\end{document}

enter image description here

  • 2
    Welcome to TeX.SE. While code snippets are useful in explanations, it is always best to compose a fully compilable MWE that illustrates the problem including the \documentclass and the appropriate packages so that those trying to help don't have to recreate it. – Peter Grill Dec 28 '16 at 8:25
5

Same idea as texboy, with slight variations:

\documentclass[border=1mm]{standalone}
\usepackage{chemfig}

\setatomsep{40pt}

\begin{document}

\chemfig{
         Histidine
     -[:90]@{iron}Fe
           (-[:30]@{topright}N)
           (-[:150]@{topleft}N-[:180,0.2,,,white]) % the 'white' bond only
           (-[:210]@{bottomleft}N)                 % serves to expand the 
           (-[:330]@{bottomright}N)                % bounding box 
     -[:90,,,,draw=none]@{oxygen}O_2
}

\chemmove{\draw[shorten <=2pt,shorten >=2pt]
    (topleft.30) to [bend left=25] (topright.150);}

\chemmove{\draw[shorten <=2pt,shorten >=2pt]
    (topright.300) to [bend left=40] (bottomright.60);}

\chemmove{\draw[shorten <=2pt,shorten >=2pt,preaction={draw=white,very thick}]
    (bottomright.210) to [bend left=25] (bottomleft.330);}

\chemmove{\draw[shorten <=2pt,shorten >=2pt]
    (bottomleft.120) to [bend left=40] (topleft.240);}

\chemmove{\draw[shorten <=2pt,shorten >=2pt,preaction={draw=white,very thick}](iron) -- (oxygen);}

\end{document}

enter image description here

Overall, it might be better though to just not use chemfig for this particular task; a plain tikzpicture environment might be more suitable.

4

Using the package TikZ

\documentclass{standalone}
\usepackage{amsmath,tikz}
\usetikzlibrary{arrows,calc}

\begin{document}
    \begin{tikzpicture}
    \tikzset{
        arc_of_ellipse/.style args={#1:#2:#3}{
                insert path={+ (#1:#3) arc (#1:#2:#3)}
        }
    }
    \def \n {4}
    \def \aM {3cm }
    \def \ac {2.5cm }
    \def \am {2cm }
    \node (Fe) at ($(0,0)$) {Fe};
    \foreach \i in {1,...,\n}
    {
        \pgfmathtruncatemacro{\j}{45+(\i - 1 )*360/\n}
        \pgfmathtruncatemacro{\k}{45+\i*360/\n}
        \draw[thick, red] (0,0) [arc_of_ellipse=\j + 5: \k-5 :\aM and \am];
        \node (N) at ($(\j:\aM and \am)$) {N};
        \draw[thick, blue] (Fe) -- (N);
    }
    \node (O2) at ($(0,\ac)$) {$\text{O}_2$};
    \draw[thick, blue] (Fe) -- (O2);
    \node[label={[xshift=0.55cm, yshift=-0.5cm]Histidine}] (Histidine) at ($(0,-\ac)$) {};
    \draw[thick, blue] (Fe) -- (Histidine);
    \draw [green] (Histidine)  to [bend left=35] (250:\aM and \am);
    \end{tikzpicture}
\end{document}

Obtained using TikZ

3

With the help of \chemmove, bended bonds are possible but it requires 2 compilations:

\documentclass{article}
\usepackage{chemfig,amsmath}
\begin{document}
\chemfig{Fe(-[:90,1.25]O_2)(-[:-90,1.25]\text{H}|\text{istidine})(-[:30]@aN)(-[:150]@bN)(-[:210]@cN)(-[:-30]@dN)}
\chemmove[-,shorten <=1pt,shorten >=1pt]{%
    \draw(a)..controls +(165:5ex)and+(15:5ex)..(b)
    ..controls+(205:5ex)and+(155:5ex)..(c)
    ..controls+(-15:5ex)and+(-165:5ex)..(d)
    ..controls+(25:5ex)and+(-25:5ex)..(a);}
\end{document}

enter image description here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.