PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SWOT Analyse mit tikz



Stefan2902
28-04-2009, 19:11
Hallo,

ich würde gerne eine SWOT Analyse bzw. Abbildung einer SWOT Analyse mit tikz generieren, die wir der Anhang.

Leider tue ich mich mal wieder mit dem Rotate und den Achsen sehr schwer.

Hat jemand eine Idee?

Stefan2902
29-04-2009, 19:31
Hallo,

beim Versuch die angehängte Grafik nachzubilden habe, ich folgende Probleme:

1. Wie kann ich ein Fünfeck erzeugen, in dem der Text mittig zentriert dargestellt wird (siehe Anhang). Mein Versuch kann dem Minimalbeispiel entnommen werden.

2. Darüber hinaus verstehe ich nicht, wie man die 4 Fünfecke sinnvoll ausichtet. Rotiere ich ein Fünfeck um z.b. 120 Grad und versuche dann x und x Achse um einen Faktor zu verschieben, bewebt sich das Fünfeck in nicht erwartete Richtungen (siehe Minimalbeispiel - zweiter Schleifendurchlauf).

Hat jemand ein Idee?



\documentclass[11pt,a4paper,ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage{babel}
\usepackage[margin=2cm]{geometry}
\usepackage{tikz}

\parindent0em

\begin{document}
\begin{tikzpicture}[scale=0.45,thick]

\draw[gray!50] (-20,-20) grid (20,20);
%\foreach \r/\x/\y in {30,120,210,300}{
\foreach \r/\x/\y in {30/-5/6, 120/-5/-6}{
\begin{scope}[rotate=\r]
\draw (0+\x,0+\y)--(-1+\x,5+\y)--(5+\x,10+\y)--(11+\x,5+\y)--(10+\x,0+\y)--(0+\x,0+\y) node[] {Dies ist ein langer Text, der im F\"unfeck zentriert sein soll};
\end{scope}
}
\end{tikzpicture}
\end{document}

Stefan2902
30-04-2009, 22:14
Hallo,

hat denn jemand eine Idee, wie ich ein Fünfeck erzeuge, dass zentriert einen Text beinhaltet?

Gruß
STefan

rais
01-05-2009, 00:07
Moin moin,


2. Darüber hinaus verstehe ich nicht, wie man die 4 Fünfecke sinnvoll ausichtet. Rotiere ich ein Fünfeck um z.b. 120 Grad und versuche dann x und x Achse um einen Faktor zu verschieben, bewebt sich das Fünfeck in nicht erwartete Richtungen
vllt versuchst Du da zuviel?


\documentclass[ngerman]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel,tikz}
\begin{document}
\begin{center}
\begin{tikzpicture}[thick]
\draw[gray!20,very thin] (-7,-7) grid (7,7);
\foreach \r in {30, 120, 210, 300}{
\begin{scope}[rotate=\r]
\draw (-2.25,2.7)--(-2.7,4.95)--(0,7.2)--(2.7,4.95)--(2.25,2.7)--cycle;
\pgftext[base,at={\pgfpoint{0cm}{4.95cm}}]{%
\parbox[t]{4cm}{\centering\Large
Dies ist ein langer Text, der im Fünfeck zentriert sein soll
}%\parbox
}%\pgftext
\end{scope}
}
\end{tikzpicture}
\end{center}
\end{document}

MfG

localghost
01-05-2009, 09:52
Ich hatte erst die gleiche Idee wie Rainer. Da aber die einzelnen Felder nicht den gleichen Inhalt haben, kommt "kopieren und rotieren" eigentlich nicht in Frage. Das Ergebnis meines Labor-Experiments sieht daher anders aus.

\documentclass[11pt,a4paper,ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage{selinput}
\SelectInputMappings{
adieresis={ä},
germandbls={ß},
Euro={€}
}
\usepackage{babel}
\usepackage[margin=2cm]{geometry}
\usepackage{enumitem}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric}

\parindent0em

\begin{document}
\begin{tikzpicture}[
every node/.style={shape=regular polygon,regular polygon sides=5,minimum size=5cm,inner sep=1mm,draw,fill=green!50},
font=\scriptsize\sffamily,
scale=0.5,
thick
]
% \draw[help lines] (-16,-16) grid (16,16);
\filldraw[thin,gray,fill=gray!25] (-16,-16) rectangle (16,16);
\filldraw[thin,gray,fill=white] (-14.3,-14.3) rectangle (14.3,14.3);
\draw[thin,gray] (14.3,14.3)--(16,16) (-14.3,14.3)--(-16,16) (-14.3,-14.3)--(-16,-16) (14.3,-14.3)--(16,-16);
\draw[thin,gray] (0.05,0.05)--(14.1,0.05)--(0.05,14.1)--cycle;
\node[rotate=-45] at (7.5,7.5) {
\parbox[c][4cm][t]{4cm}{
\begin{itemize}[leftmargin=*]
\item Falsches Üben von Xylophonmusik quält jeden größeren Zwerg.
\item Falsches Üben von Xylophonmusik quält jeden größeren Zwerg.
\end{itemize}
\vfill
\centering
\large
WEAKNESS
}
};
\draw[thin,gray] (-0.05,0.05)--(-14.1,0.05)--(-0.05,14.1)--cycle;
\node[rotate=45] at (-7.5,7.5) {
\parbox[c][4cm][t]{4cm}{
\begin{itemize}[leftmargin=*]
\item Falsches Üben von Xylophonmusik quält jeden größeren Zwerg.
\item Falsches Üben von Xylophonmusik quält jeden größeren Zwerg.
\end{itemize}
\vfill
\centering
\large
STRENGTH
}
};
\draw[thin,gray] (-0.05,-0.05)--(-14.1,-0.05)--(-0.05,-14.1)--cycle;
\node[rotate=135] at (-7.5,-7.5) {
\parbox[c][4cm][t]{4cm}{
\begin{itemize}[leftmargin=*]
\item Falsches Üben von Xylophonmusik quält jeden größeren Zwerg.
\item Falsches Üben von Xylophonmusik quält jeden größeren Zwerg.
\end{itemize}
\vfill
\centering
\large
OPPORTUNITY
}
};
\draw[thin,gray] (0.05,-0.05)--(14.1,-0.05)--(0.05,-14.1)--cycle;
\node[rotate=-135] at (7.5,-7.5) {
\parbox[c][4cm][t]{4cm}{
\begin{itemize}[leftmargin=*]
\item Falsches Üben von Xylophonmusik quält jeden größeren Zwerg.
\item Falsches Üben von Xylophonmusik quält jeden größeren Zwerg.
\end{itemize}
\vfill
\centering
\large
THREAT
}
};
\end{tikzpicture}
\end{document}
Ich habe für die Felder nodes mit einem Pentagon als shape gewählt und individuell gedreht. Ein Nachteil der Sache ist, dass eine Veränderung der parbox in ihren Ausmaßen gleich die Größe des betroffenen Feldes ändert. Insgesamt lässt sich dieses Gerüst sicherlich noch optimieren.


MfG
Thorsten¹

Stefan2902
01-05-2009, 10:27
Vielen Dank erstmal. Das hilft mir wirklich sehr!

Ich habe noch zwei kurze Fragen dazu:

1.

Ich versuche jetzt noch die textlichen Beschriftungen wie etwa "External", "Internal" ... aber auch "S", "W" ... (siehe Anhang) einzufügen.

Da in deinem Beispiel alle Nodes nun als Polygon angegeben werden (every node/.style={shape=regular polygon...), werden meine Texte auch als Polygon dargestellt (siehe Code).

Hast du eine Idee wie ich die Texte sinnvoll setzen kann.

2.

Ich habe nun auch die Texte in die Fünfecke geschrieben. Für den Strength Knoten ragt der Text leider heraus, weil es zu lang ist (siehe Code).

Hast du eine Idee, wie man den Text sinnvoll verkleinern kann, damit er (a) in das Polygon passt und (b) noch lesbar ist?



\documentclass[11pt,a4paper,ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage{selinput}
\SelectInputMappings{
adieresis={ä},
germandbls={ß},
Euro={€}
}
\usepackage{babel}
\usepackage[margin=2cm]{geometry}
\usepackage{enumitem}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric}
\definecolor{swotGreen}{rgb}{0.815, 0.855, 0.71}

\parindent0em

\begin{document}
\begin{tikzpicture}[
every node/.style={shape=regular polygon,regular polygon sides=5,minimum size=5cm,inner sep=1mm,draw,fill= swotGreen},
font=\scriptsize\sffamily,
scale=0.5,
thick
]
% \draw[help lines] (-16,-16) grid (16,16);
\filldraw[thin,gray,fill=gray!25] (-16,-16) rectangle (16,16);
\filldraw[thin,gray,fill=white] (-14.3,-14.3) rectangle (14.3,14.3);
\draw[thin,gray] (14.3,14.3)--(16,16) (-14.3,14.3)--(-16,16) (-14.3,-14.3)--(-16,-16) (14.3,-14.3)--(16,-16);
\draw[thin,gray] (0.05,0.05)--(14.1,0.05)--(0.05,14.1)--cycle;
\node[rotate=-45] at (7.5,7.5) {
\parbox[c][4cm][t]{4cm}{
\begin{itemize}[leftmargin=*]
\item Centralized decisions
\item Marketing capabilities
\item Accounts cross-selling
\item Win on price image
\item BPO market
\item No differentiation
\end{itemize}
\vfill
\centering
\large
WEAKNESS
}
};
\draw[thin,gray] (-0.05,0.05)--(-14.1,0.05)--(-0.05,14.1)--cycle;
\node[rotate=45] at (-7.5,7.5) {
\parbox[c][4cm][t]{4cm}{
\begin{itemize}[leftmargin=*]
\item Technical and business expertise
\item Stable management team
\item Economies of scale
\item Financial stability
\item Acquisition capabilities
\item Domestic market orientation
\item Training programs
\item Loyalty and retention
\end{itemize}
\vfill
\centering
\large
STRENGTH
}
};
\draw[thin,gray] (-0.05,-0.05)--(-14.1,-0.05)--(-0.05,-14.1)--cycle;
\node[rotate=135] at (-7.5,-7.5) {
\parbox[c][4cm][t]{4cm}{
\begin{itemize}[leftmargin=*]
\item Marketing push
\item Adding BPO capabilities
\item Pricing structure
\item Business process approach
\item Annuity engagement
\end{itemize}
\vfill
\centering
\large
OPPORTUNITY
}
};
\draw[thin,gray] (0.05,-0.05)--(14.1,-0.05)--(0.05,-14.1)--cycle;
\node[rotate=-135] at (7.5,-7.5) {
\parbox[c][4cm][t]{4cm}{
\begin{itemize}[leftmargin=*]
\item High-risk deals
\item Image change inability
\item Degree of automation
\item Profitability losses
\end{itemize}
\vfill
\centering
\large
THREAT
}
};


% Text Rahmen
\draw (0, -11.5) node[text centered] {External};


\end{tikzpicture}
\end{document}

Stefan2902
01-05-2009, 12:01
zu 2) habe ich eine Lösung gefunden und zwar, indem ich die Abstände der Bulletpoint verringert habe:



\begin{itemize}[leftmargin=*]\setlength\itemsep{0.1em}\setlength\parskip{0.1em}


Jetzt muss ich nur noch wissen, wie ich Texte schreiben kann, ohne dass ein Polygon erstellt wird (siehe Punkt 1)...

Stefan2902
01-05-2009, 12:34
Habe nun auch Punkt 1) hinbekommen.

Hier das Gesamtresultat:



\documentclass[11pt,a4paper,ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage{selinput}
\SelectInputMappings{
adieresis={ä},
germandbls={ß},
Euro={€}
}
\usepackage{babel}
\usepackage[margin=2cm]{geometry}
\usepackage{enumitem}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric}
\definecolor{swotGreen}{rgb}{0.815, 0.855, 0.71}

\parindent0em

\begin{document}
\begin{tikzpicture}[
fuenfeck/.style={shape=regular polygon,regular polygon sides=5,minimum size=5cm,inner sep=1mm,draw,fill= swotGreen},
font=\scriptsize\sffamily,
scale=0.5,
thick
]

% \draw[help lines] (-16,-16) grid (16,16);
\filldraw[thin,gray,fill=gray!25] (-16,-16) rectangle (16,16);
\filldraw[thin,gray,fill=white] (-14.3,-14.3) rectangle (14.3,14.3);
\draw[thin,gray] (14.3,14.3)--(16,16) (-14.3,14.3)--(-16,16) (-14.3,-14.3)--(-16,-16) (14.3,-14.3)--(16,-16);
\draw[thin,gray] (0.05,0.05)--(14.1,0.05)--(0.05,14.1)--cycle;
\node[rotate=-45, fuenfeck] at (7.5,7.5) {
\parbox[c][4cm][t]{4cm}{
\begin{itemize}[leftmargin=*]
\item Centralized decisions
\item Marketing capabilities
\item Accounts cross-selling
\item Win on price image
\item BPO market
\item No differentiation
\end{itemize}
\vfill
\centering
\large
WEAKNESS
}
};
\draw[thin,gray] (-0.05,0.05)--(-14.1,0.05)--(-0.05,14.1)--cycle;
\node[rotate=45, fuenfeck] at (-7.5,7.5) {
\parbox[c][4cm][t]{4cm}{
\begin{itemize}[leftmargin=*]\setlength\itemsep{0.1em}\setlength\parskip{0.1em}
\item Technical and business expertise
\item Stable management team
\item Economies of scale
\item Financial stability
\item Acquisition capabilities
\item Domestic market orientation
\item Training programs
\item Loyalty and retention
\end{itemize}
\vfill
\centering
\large
STRENGTH
}
};
\draw[thin,gray] (-0.05,-0.05)--(-14.1,-0.05)--(-0.05,-14.1)--cycle;
\node[rotate=135, fuenfeck] at (-7.5,-7.5) {
\parbox[c][4cm][t]{4cm}{
\begin{itemize}[leftmargin=*]
\item Marketing push
\item Adding BPO capabilities
\item Pricing structure
\item Business process approach
\item Annuity engagement
\end{itemize}
\vfill
\centering
\large
OPPORTUNITY
}
};
\draw[thin,gray] (0.05,-0.05)--(14.1,-0.05)--(0.05,-14.1)--cycle;
\node[rotate=-135, fuenfeck] at (7.5,-7.5) {
\parbox[c][4cm][t]{4cm}{
\begin{itemize}[leftmargin=*]
\item High-risk deals
\item Image change inability
\item Degree of automation
\item Profitability losses
\end{itemize}
\vfill
\centering
\large
THREAT
}
};

% Texte Rahmen
\draw[black](0,-15.1) node[black] {\Large EXTERNAL};
\draw[black](0,15.1) node[black] {\Large INTERNAL};
\draw[black](-15.1,0) node[black, rotate=90] {\Large POSITIVE};
\draw[black](15.1,0) node[black, rotate=270] {\Large NEGATIVE};

% Texte Innen
\draw[black](-2,-2) node[black] {\Huge O};
\draw[black](2,-2) node[black] {\Huge T};
\draw[black](-2,2) node[black] {\Huge S};
\draw[black](2,2) node[black] {\Huge W};

\end{tikzpicture}

\end{document}

localghost
01-05-2009, 18:21
Dein Ideen decken sich mit meinen. Die will ich nochmal kurz darstellen.
\documentclass[11pt,a4paper,ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage{selinput}
\SelectInputMappings{
adieresis={ä},
germandbls={ß},
Euro={€}
}
\usepackage{babel}
\usepackage[margin=2cm]{geometry}
\usepackage{enumitem}
\usepackage[svgnames]{xcolor}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric}
\usepackage{lmodern}

\parindent0em

\begin{document}
\begin{tikzpicture}[
pentagon/.style={%
shape=regular polygon,
regular polygon sides=5,
minimum size=5cm,
inner sep=1mm,
draw,
fill=DarkSeaGreen
},
font=\scriptsize\sffamily,
thick
]
% \draw[help lines] (-16,-16) grid (16,16);
\filldraw[thin,gray,fill=gray!25] (-8,-8) rectangle (8,8);
\filldraw[thin,gray,fill=white] (-7.15,-7.15) rectangle (7.15,7.15);
\draw[thin,gray] (7.15,7.15)--(8,8) (-7.15,7.15)--(-8,8) (-7.15,-7.15)--(-8,-8) (7.15,-7.15)--(8,-8);
\draw[thin,gray] (-0.025,0.025)--(-7.05,0.025)--(-0.025,7.05)--cycle;
\node[pentagon,rotate=45] at (-3.75,3.75) {
\parbox[c][4cm][t]{4cm}{
\begin{itemize}[leftmargin=*,noitemsep]
\item Technical and business expertise
\item Stable management team
\item Economies of scale
\item Financial stability
\item Acquisition capabilities
\item Domestic market orientation
\item Training programs
\item Loyalty and retention
\end{itemize}
\vfill
\centering
\large
\textbf{STRENGTH}
}
};
\draw[thin,gray] (0.025,0.025)--(7.05,0.025)--(0.025,7.05)--cycle;
\node[pentagon,rotate=-45] at (3.75,3.75) {
\parbox[c][4cm][t]{4cm}{
\begin{itemize}[leftmargin=*,noitemsep]
\item Centralized decisions
\item Marketing capabilities
\item Accounts cross-selling
\item Win on price image
\item BPO market
\item No differentiation
\end{itemize}
\vfill
\centering
\large
\textbf{WEAKNESS}
}
};
\draw[thin,gray] (-0.025,-0.025)--(-7.05,-0.025)--(-0.025,-7.05)--cycle;
\node[pentagon,rotate=135] at (-3.75,-3.75) {
\parbox[c][4cm][t]{4cm}{
\begin{itemize}[leftmargin=*,noitemsep]
\item Marketing push
\item Adding BPO capabilities
\item Pricing structure
\item Business process approach
\item Annuity engagement
\end{itemize}
\vfill
\centering
\large
\textbf{OPPORTUNITY}
}
};
\draw[thin,gray] (0.025,-0.025)--(7.05,-0.025)--(0.025,-7.05)--cycle;
\node[pentagon,rotate=-135] at (3.75,-3.75) {
\parbox[c][4cm][t]{4cm}{
\begin{itemize}[leftmargin=*,noitemsep]
\item High-risk deals
\item Image change inability
\item Degree of automation
\item Profitability losses
\end{itemize}
\vfill
\centering
\large
\textbf{THREAT}
}
};
\draw(0,-7.55) node {\Large EXTERNAL};
\draw(0,7.55) node {\Large INTERNAL};
\draw(-7.55,0) node[rotate=90] {\Large POSITIVE};
\draw(7.55,0) node[rotate=270] {\Large NEGATIVE};
\draw(-0.6,0.6) node {\Huge\textbf{S}};
\draw(0.6,0.6) node {\Huge\textbf{W}};
\draw(-0.6,-0.6) node {\Huge\textbf{O}};
\draw(0.6,-0.6) node {\Huge\textbf{T}};
\end{tikzpicture}
\end{document}
Allerdings habe ich mit Hilfe von enumitem (http://ctan.org/pkg/enumitem) die Listen in den Feldern komprimiert.

voss
01-05-2009, 18:27
Dein Ideen decken sich mit meinen. Die will ich nochmal kurz darstellen.


mit varwidth anstelle von parbox bekommt man eine bessere Ausrichtung
des Textes hin. Dann ist der Block immer zentriert.


\documentclass[11pt,a4paper,ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage[margin=2cm]{geometry}
\usepackage{enumitem,mathptmx}
\usepackage{pst-node,multido,varwidth}
\definecolor{swotGreen}{rgb}{0.815, 0.855, 0.71}

\parindent0em
\begin{document}

\psset{unit=0.5cm}\SpecialCoor
\begin{pspicture}(-16,-16)(16,16)
\psframe[fillcolor=gray!25,fillstyle=solid](-16,-16)(16,16)
\psline(-16,-16)(16,16)\psline(-16,16)(16,-16)
\psframe[fillcolor=white,fillstyle=solid](-14.3,-14.3)(14.3,14.3)
\multido{\iA=29+90,\iB=45+90}{4}{%
\rput{!\iA\space 29 sub}{\pspolygon[linecolor=gray](0.05,0.05)(14.1,0.05)(0.05,14.1)}
\rput{\iA}(10.5;\iB){%
\pspolygon[fillcolor=swotGreen,fillstyle=solid]%
(7.2;-126)(7.2;-54)(7.2;16)(7.2;88)(7.2;160)(7.2;232)}}
\rput{-45}(7.5,7.5){\varwidth{\linewidth}
\begin{itemize}[leftmargin=*]\parskip=0pt
\item Centralized decisions
\item Marketing capabilities
\item Accounts cross-selling
\item Win on price image
\item BPO market
\item No differentiation
\end{itemize}\endvarwidth}
\rput{-45}(3.75,3.75){\large\bfseries WEAKNESS}
\rput{45}(-7.5,7.5){\varwidth{4.5cm}
\begin{itemize}[leftmargin=*]\parskip=0pt\itemsep=0pt\small
\item Technical and business expertise
\item Stable management team
\item Economies of scale
\item Financial stability
\item Acquisition capabilities
\item Domestic market orientation
\item Training programs
\item Loyalty and retention
\end{itemize}\endvarwidth}
\rput{45}(-3.75,3.75){\large\bfseries STRENGTH}
\rput{135}(-7.5,-7.5){\varwidth{\linewidth}
\begin{itemize}[leftmargin=*]\parskip=0pt
\item Marketing push
\item Adding BPO capabilities
\item Pricing structure
\item Business process approach
\item Annuity engagement
\end{itemize}\endvarwidth}
\rput{135}(-3.75,-3.75){\large\bfseries OPPORTUNITY}
\rput{225}(7.5,-7.5){\varwidth{\linewidth}
\begin{itemize}[leftmargin=*]\parskip=0pt
\item High-risk deals
\item Image change inability
\item Degree of automation
\item Profitability losses
\end{itemize}\endvarwidth}
\rput{225}(3.75,-3.75){\large\bfseries THREAT}
\rput(0,-15.1){\Large EXTERNAL}\rput(0,15.1){\Large INTERNAL}
\rput{90}(-15.1,0){\Large POSITIVE}\rput{270}(15.1,0){\Large NEGATIVE}
\rput(-2,-2){\Huge O}\rput(2,-2){\Huge T}\rput(-2,2){\Huge S}\rput(2,2){\Huge W};
\end{pspicture}

\end{document}

Herbert

localghost
01-05-2009, 19:31
mit varwidth anstelle von parbox bekommt man eine bessere Ausrichtung
des Textes hin. Dann ist der Block immer zentriert.
In der Tat sehr nützlich.

\documentclass[11pt,a4paper,ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage{selinput}
\SelectInputMappings{
adieresis={ä},
germandbls={ß},
Euro={€}
}
\usepackage{babel}
\usepackage[margin=2cm]{geometry}
\usepackage{enumitem,varwidth}
\usepackage[svgnames]{xcolor}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric}
\usepackage{lmodern}

\parindent0em

\begin{document}
\begin{tikzpicture}[
pentagon/.style={%
shape=regular polygon,
regular polygon sides=5,
minimum size=7.3cm,
inner sep=-1mm,
draw,
fill=DarkSeaGreen!75!yellow
},
font=\scriptsize\sffamily,
thick
]
% \draw[help lines] (-16,-16) grid (16,16);
\filldraw[thin,gray,fill=gray!25] (-8,-8) rectangle (8,8);
\filldraw[thin,gray,fill=white] (-7.15,-7.15) rectangle (7.15,7.15);
\draw[thin,gray] (7.15,7.15)--(8,8) (-7.15,7.15)--(-8,8) (-7.15,-7.15)--(-8,-8) (7.15,-7.15)--(8,-8);
\draw[thin,gray] (-0.025,0.025)--(-7.05,0.025)--(-0.025,7.05)--cycle;
\node[pentagon,rotate=45] at (-3.75,3.75) {
\begin{varwidth}{\linewidth}
\begin{itemize}[leftmargin=*,noitemsep]
\item Technical and business expertise
\item Stable management team
\item Economies of scale
\item Financial stability
\item Acquisition capabilities
\item Domestic market orientation
\item Training programs
\item Loyalty and retention
\end{itemize}
\end{varwidth}
};
\draw (-2,2) node[rotate=45] {\large\textbf{Strength}};
\draw[thin,gray] (0.025,0.025)--(7.05,0.025)--(0.025,7.05)--cycle;
\node[pentagon,rotate=-45] at (3.75,3.75) {
\begin{varwidth}{\linewidth}
\begin{itemize}[leftmargin=*,noitemsep]
\item Centralized decisions
\item Marketing capabilities
\item Accounts cross-selling
\item Win on price image
\item BPO market
\item No differentiation
\end{itemize}
\end{varwidth}
};
\draw (2,2) node[rotate=-45] {\large\textbf{Weakness}};
\draw[thin,gray] (-0.025,-0.025)--(-7.05,-0.025)--(-0.025,-7.05)--cycle;
\node[pentagon,rotate=135] at (-3.75,-3.75) {
\begin{varwidth}{\linewidth}
\begin{itemize}[leftmargin=*,noitemsep]
\item Marketing push
\item Adding BPO capabilities
\item Pricing structure
\item Business process approach
\item Annuity engagement
\end{itemize}
\end{varwidth}
};
\draw (-2,-2) node[rotate=135] {\large\textbf{Opportunity}};
\draw[thin,gray] (0.025,-0.025)--(7.05,-0.025)--(0.025,-7.05)--cycle;
\node[pentagon,rotate=-135] at (3.75,-3.75) {
\begin{varwidth}{\linewidth}
\begin{itemize}[leftmargin=*,noitemsep]
\item High-risk deals
\item Image change inability
\item Degree of automation
\item Profitability losses
\end{itemize}
\end{varwidth}
};
\draw (2,-2) node[rotate=-135] {\large\textbf{Threat}};
\draw(0,-7.55) node {\Large EXTERNAL};
\draw(0,7.55) node {\Large INTERNAL};
\draw(-7.55,0) node[rotate=90] {\Large POSITIVE};
\draw(7.55,0) node[rotate=270] {\Large NEGATIVE};
\draw(-0.6,0.6) node {\Huge\textbf{S}};
\draw(0.6,0.6) node {\Huge\textbf{W}};
\draw(-0.6,-0.6) node {\Huge\textbf{O}};
\draw(0.6,-0.6) node {\Huge\textbf{T}};
\end{tikzpicture}
\end{document}