tikz로 피라미드 그리기

tikz로 피라미드 그리기

라텍스로 다음 피라미드를 그리고 싶습니다. (어느 정도 익숙하므로 Tikz를 선호합니다.)

여기에 이미지 설명을 입력하세요

나는 발견했다이 주제그것은 멋진 피라미드를 만드는 방법을 설명하지만 텍스트가 길어서 쉽게 적용할 수 없습니다.

그래서 내가 가진 최고는 다음과 같습니다.

\documentclass[a4paper]{article}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{amsmath, amsthm, amssymb}
\usepackage{graphicx}
\usepackage[colorinlistoftodos]{todonotes}
\usepackage{fullpage}
\usepackage{listings}   
\usepackage{booktabs}
\usepackage{colortbl}
\usepackage{longtable}
\usepackage{tikz-cd}
\usepackage{lscape}
\usetikzlibrary{shapes,arrows,intersections}
\usetikzlibrary{matrix,fit,calc,trees,positioning,arrows,chains,shapes.geometric,shapes}
\usepackage{setspace}
\onehalfspacing
\setcounter{secnumdepth}{3}    % Number subsubsections in the chapters
\setcounter{tocdepth}{5}       % Put subparagraph in the table of contents
\usepackage{tikz}
\usetikzlibrary{intersections}
\begin{document}

\begin{figure}[htp]
\centering
\begin{tikzpicture}
\coordinate (A) at (-5,0) {};
\coordinate (B) at ( 5,0) {};
\coordinate (C) at (0,7) {};
\draw[name path=AC] (A) -- (C);
\draw[name path=BC] (B) -- (C);
\foreach \y/\A in {0/Autres actes administratifs (circulaires et directives) ,1/Règlements (décrèts et arrêtés),2/Principes généraux du droit,3/bloc de légalité,4/Bloc de conventionalité ,5/Bloc de Constitutionnalité} {
    \path[name path=horiz] (A|-0,\y) -- (B|-0,\y);
    \draw[name intersections={of=AC and horiz,by=P},
          name intersections={of=BC and horiz,by=Q}] (P) -- (Q)
          node[midway,above] {\A};
}
\end{tikzpicture}
\end{figure}
\end{document}

그 결과

여기에 이미지 설명을 입력하세요

답변1

\documentclass{article}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage[condensed,math]{iwona}
\usepackage[T1]{fontenc}
\usepackage{amsmath, amsthm, amssymb}
\usepackage{graphicx}
\usepackage[usenames,svgnames]{xcolor}
\usepackage[colorinlistoftodos]{todonotes}
\usepackage{fullpage}
\usepackage{listings}   
\usepackage{booktabs}
\usepackage{colortbl}
\usepackage{longtable}
\usepackage{tikz-cd}
\usepackage{lscape}
\usetikzlibrary{shapes,arrows,intersections}
\usetikzlibrary{matrix,fit,calc,trees,positioning,arrows,chains,shapes.geometric,shapes}
\usepackage{setspace}
\onehalfspacing
\setcounter{secnumdepth}{3}    % Number subsubsections in the chapters
\setcounter{tocdepth}{5}       % Put subparagraph in the table of contents
\usepackage{tikz}
\usetikzlibrary{intersections}

\begin{document}

\begin{figure}[htp]
\centering
\begin{tikzpicture}
\coordinate (A) at (-4.5,0) {};
\coordinate (B) at ( 4.5,0) {};
\coordinate (C) at (0,8) {};
\path[name path=AC,draw=none] (A) -- (C);
\path[name path=BC,draw=none] (B) -- (C);
\filldraw[draw=Purple, ultra thick,fill=Purple!10] (A) -- (B) -- (C) -- cycle ;

\foreach \y/\A in {0/{Autres actes administratifs \small\upshape\mdseries(circulaires et directives)},
                   1/{Règlements \small\upshape\mdseries(décrèts et arrêtés)},
                   2/Principes généraux du droit,
                   3/Bloc de légalité,
                   4/Bloc de conventionalité,
                   5/\parbox{3cm}{\centering Bloc de\\ Constitutionnalité}} {
    \path[draw=none, very thick, dashed, name path=horiz] (A|-0,\y) -- (B|-0,\y);
    \draw[draw=Purple, very thick, dashed, 
          name intersections={of=AC and horiz,by=P},
          name intersections={of=BC and horiz,by=Q}] (P) -- (Q)
          node[midway,above,font=\bfseries\scshape,color=red!60!Brown] {\A};
}
\end{tikzpicture}
\end{figure}
\end{document}

xcolor패키지 (일부 색상의 경우)와 iwona(글꼴의 경우) 서문에 패키지를 추가했습니다 .

여기에 이미지 설명을 입력하세요

답변2

여기에 이미지 설명을 입력하세요

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{intersections}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\begin{document}

\begin{figure}[htp]
\centering
\begin{tikzpicture}
\coordinate (A) at (-5,0) {};
\coordinate (B) at ( 5,0) {};
\coordinate (C) at (0,7) {};
\draw[name path=AC] (A) -- (C);
\draw[name path=BC] (B) -- (C);
\foreach \y/\A in {
0/Autres actes administratifs (circulaires et directives) ,
1/Règlements (décrèts et arrêtés),
2/Principes généraux du droit,
3/bloc de légalité,
4/Bloc de conventionalité ,
5/Bloc\\ de Constitutionnalité} {
    \path[name path=horiz] (A|-0,\y) -- (B|-0,\y);
    \draw[name intersections={of=AC and horiz,by=P},
          name intersections={of=BC and horiz,by=Q}] (P) -- (Q)
          node[midway,above,align=center,text width=
\dimexpr(6em-\y em)*5\relax] {\A};
}
\end{tikzpicture}
\end{figure}
\end{document}

관련 정보