1

I have this figure from Sharpe (1964), which I want to re-create with tikz-pgf: Utility curves

I am quite new to the tikz-pgf package, so I do not really know where to start. I would like to do something similar to the picture, but with the utility curves flipped (so that they are convex). I would like to include a feasible area (shown as the shaded part of the figure), but it does not have to be that exact shape, and the letters are not needed, but would be nice to have.

Does anyone know how to get started with something like that? Thanks in advance!

  • Welcome! It is pretty straightforward to draw such things with TikZ or PSTricks. You will get more feedback when you show us what you've tried, or, at least provide some information how this shape is obtained (parametrization etc.). – user121799 Feb 15 '18 at 23:09
  • pgfplots or TikZ's own data visualisation stuff or PSTricks. With or without one of the helper programmes such as gnuplot. (Don't know how that shape is generated, so don't know how realistic an in-TeX solution might be.) Why do you want to do this in TeX rather than another programme especially? If you want to do it this way, pick the poison of your choice and work through a couple of beginners' tutorials before tackling your actual diagram, just so you are comfortable with the syntax. – cfr Feb 15 '18 at 23:58
  • @marmot I'll definitely do that next time. – Andreas Feb 16 '18 at 8:03
  • @cfr Thanks for your comment. I had seen a couple very fancy graphs/figures requested here on the site, which apparently were possible to do in LaTeX. I am somewhat familiar with syntax when writing smaller reports, where I haven't had to include my own figures yet. So I had no idea how use the package, hence not knowing its limits. But I'll go through some beginners' tutorials for next time before asking. – Andreas Feb 16 '18 at 8:10
4
\documentclass[border=3pt]{standalone}
\makeatletter 
\newcommand*{\bottop}{% from https://tex.stackexchange.com/a/414828/121799
  \mathpalette\@bottop{}%
}
\newcommand*{\@bottop}[2]{%
  % #1: math style
  % #2: unused
  \rlap{$#1\bot\m@th$}% put \bot to the right without moving the current point
  \top
}
\makeatother
\usepackage{tikz}
\usetikzlibrary{positioning,calc}
\begin{document}
\begin{tikzpicture}
 \node[label=right:$F$] (F) at (8.8,4){$\bullet$};
 \node[label=below:$A$] (A) at (4.3,1.6){$\bullet$};
 \node[label=right:$X$] (X) at (11.6,11.8){$\bullet$};
 \node[label=right:$C$] (C) at (10.9,8.3){$\bullet$};
 \node[label=right:$D$] (D) at (10.75,7.9){$\bullet$};
 \node[label=right:$D$] (B) at (10.3,7){$\bullet$};
 \draw[thick] (0,0) -- (0,16) node[left,pos=0.9]{$\sigma_\mathrm{R}$};
 \draw[thick] (0,0) -- (16,0) node[below,pos=0.9]{$E_\mathrm{R}$};
 \draw[thick,fill=gray] (1.3,3.2) to (3.6,7) to[bend right=10] (6.6,10)
 to[bend right=14] (X.center) 
 to[bend left=14] (C.center)
 to[bend left=4] (D.center)
 to[bend left=4] (B.center)
 to[bend left=4] (F.center) 
 to[bend left=24] (A.center) to[bend left=24]  cycle;
 \draw[ultra thick,dashed] (3,0) to[bend left=7] (6,5.6) to[bend left=22] 
 (15,11.2) node[right] {$\bottop$};
 \draw[ultra thick,dashed] (6.5,0) to[bend left=7] (F) to[bend left=22] 
 (15,8.2) node[right] {$\bottop\!\!\bottop$};
 \draw[ultra thick,dashed] (9.7,0) to[bend left=17] 
 (15,5.2) node[right] {$\bottop\!\!\bottop\!\!\bottop$};
 \draw[thick,latex-] (B.center) -- (B|-C) node[label=left:$Z$](Z){$\bullet$};
 \draw[thick,-latex] (Z.center) -- (C.center);
 \draw[thick,-latex] (Z.center) -- (D.center);
\end{tikzpicture} 
\end{document}

enter image description here

  • Thank you, marmot! Simply amazing. Now I have some idea of how to work with the tikz-pgf package for next time. Have a great weekend! – Andreas Feb 16 '18 at 7:59

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.