Sunday, 6 October 2013

Bloom's taxonomy drawn in Tikz

I'm in the middle of writing about various pedagogic theories for PCUTL (a higher education certification process) and I needed a picture of Bloom's taxonomy:



I needed to be able to play around with it a bit (so as to add annotations and colours like in the above picture) so I wanted something in Tikz. I found this helpful stack-exchange post for hierarchical pyramids and stole modified the code from there to get Bloom's taxonomy in Tikz. Here's the stripped down version:



The code is here (I modified the following slightly to give the above standalone image using the tikz standalone document class):


\documentclass{article}

\usepackage{tikz}
\usetikzlibrary{intersections}

\title{Bloom's taxonomy}


\begin{document}
\begin{center}

\begin{tikzpicture}
\coordinate (A) at (-6,1) {};
\coordinate (B) at ( 6,1) {};
\coordinate (C) at (0,7.5) {};
\draw[name path=AC] (A) -- (C);
\draw[name path=BC] (B) -- (C);
\foreach \y/\A in {1/Knowledge,2/Comprehension,3/Application,4/Analysis,5/Synthesis,6/Evaluation} {
\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{center}

\end{document}


I put it up on +writeLaTeX as well: here.


2 comments:

  1. with angle in radian:

    \begin{tikzpicture}
    \def\angle{40}
    \def\cote{2}

    %flèche
    \draw [->, >=latex, green!50!blue, line width=15pt] (270+\angle:7*\cote) -- (270+\angle:0.2*\cote);
    %
    \draw[fill =red!80!white] (0:0) -- (270+\angle:\cote) -- node[above,midway, color= white]{Innovation} (270-\angle:\cote) -- cycle ;

    \draw[fill =orange] (270+\angle:\cote) -- (270+\angle:2*\cote) -- node[above,midway, color= black]{Cr\'eation} (270-\angle:2*\cote) -- (270-\angle:\cote) -- cycle ;

    \draw[fill =yellow] (270+\angle:2*\cote) -- (270+\angle:3*\cote) -- node[above,midway, color= black]{\'Evaluation} (270-\angle:3*\cote) -- (270-\angle:2*\cote) -- cycle ;

    \draw[fill =green!50!white] (270+\angle:3*\cote) -- (270+\angle:4*\cote) -- node[above,midway, color= black]{Analyse} (270-\angle:4*\cote) -- (270-\angle:3*\cote) -- cycle ;

    \draw[fill =purple!50!white] (270+\angle:4*\cote) -- (270+\angle:5*\cote) -- node[above,midway, color= white]{Application} (270-\angle:5*\cote) -- (270-\angle:4*\cote) -- cycle ;

    \draw[fill =blue!50!white] (270+\angle:5*\cote) -- (270+\angle:6*\cote) -- node[above,midway, color= white]{Compr\'ehension} (270-\angle:6*\cote) -- (270-\angle:5*\cote) -- cycle ;

    \draw[fill =blue!10!white] (270+\angle:6*\cote) -- (270+\angle:7*\cote) -- node[above,midway, color= black]{Connaissance} (270-\angle:7*\cote) -- (270-\angle:6*\cote) -- cycle ;


    \draw[fill=blue!10!white] (270+\angle:6.5*\cote) circle (0.5) node [color=black] {1};
    \draw[fill=blue!50!white] (270+\angle:5.5*\cote) circle (0.5) node [color=white] {2};
    \draw[fill=purple!50!white] (270+\angle:4.5*\cote) circle (0.5) node [color=black] {3};
    \draw[fill=green!50!white] (270+\angle:3.5*\cote) circle (0.5) node [color=black] {4};
    \draw[fill=green!50!white] (270+\angle:3.5*\cote) circle (0.5) node [color=black] {4};
    \draw[fill=yellow] (270+\angle:2.5*\cote) circle (0.5) node [color=black] {5};
    \draw[fill=orange] (270+\angle:1.5*\cote) circle (0.5) node [color=black] {6};

    %légendes
    \node[draw,rounded corners] at (270+\angle:7.5*\cote) {Niveau};
    \node[draw,rounded corners] at (270:6*\cote) {Domaines cognitifs};
    \end{tikzpicture}

    ReplyDelete