1

I would like to have a figure like the following image, but I can't find a way to make the red convex curves.

enter image description here

My code so far contains:

\begin{tikzpicture}
\draw (1, 3.5) to[out=0,in=90] (3.5, 1);
\draw (.5, 3) to[out=0,in=90] (3, .5);
\draw (.25, 2.5) to[out=0,in=90] (2.5, 0.25);
    \draw[-, very thick] (0,0) node[below]{O} -- (4.2,0) node[below] {y};
    \draw[-, very thick] (0,0) -- (0,4) node[left]{x};
\draw[-,very thick] (0,4)--(4.2, 4) node[above]{A};
\draw[-, very thick] (4.2, 4)--(4.2,0);

\end{tikzpicture}
  • You completely ignored 3 quadrants. – sonics876 Apr 23 '14 at 5:54
2

That should do:

\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw (0,10) node[left] {100} -- (0,0) node[midway,left] {Good Y} node[left]{A} -- (10,0) node[midway,below] {Good X} node[below] {100};
\draw (0,10) node[left] {100} -- (10,10) node[midway,above] {Good X} node[right]{B} -- (10,0) node[midway,right] {Good Y} node[below] {100};

\draw[very thick] (1, 9) to[out=0,in=90] (9, 1);
\draw[very thick] (1, 6.63) to[out=0,in=90] (6.63, 1);
\draw[thick,dashed] (1, 7.5) to[out=0,in=90] (7.5, 1);
\draw[thick,dashed] (1, 8.25) to[out=0,in=90] (8.25, 1);
\draw[thick,dashed,red] (3.33, 9) to[out=-90,in=180] (9, 3.33);

\draw[very thick,red] (1, 9) to[out=-90,in=180] (9, 1);
\draw[thick,dashed,red] (1.8, 9) to[out=-90,in=180] (9, 1.8);
\draw[thick,dashed,red] (2.5, 9) to[out=-90,in=180] (9, 2.5);
\draw[very thick,red] (3.33, 9) to[out=-90,in=180] (9, 3.33);

\draw[fill=green] (1,9) circle (1mm) node[left=2pt] {a};
\draw[fill=green] (9,1) circle (1mm) node[right=2pt] {q};
\draw[->,>=latex] (9,1)--(8.5,1.2);

\draw[->,>=latex] (9,5) node[above]{\footnotesize \begin{tabular}{c}Initial\\ Endowment\end{tabular}} to[out=-50,in=70] (9.1,1.1);

\draw[->,>=latex] (8,8) node[above]{\footnotesize \begin{tabular}{c}Efficient\\ Allocation\end{tabular}} to[out=-90,in=20] (5.1,5.1);
\end{tikzpicture}
\end{document}

I am sure that there is a much more efficient way of doing it, but this is a starting point.

  • Welcome to TeX.SX! Please make your code compilable (if possible), or at least complete it with \documentclass{...}, the required \usepackage's, \begin{document}, and \end{document}. This will ensure that the code compiles, which might be helpful to future viewers of this question. – Adam Liter Apr 17 '14 at 16:54
  • Thanks for the comments, the code was edited to make it compilable. – Foblire Apr 17 '14 at 18:11

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.