Beschriftung in tikz

Tabellen und Grafiken erstellen und anordnen


nixversteh
Forum-Meister
Forum-Meister
Beiträge: 561
Registriert: Di 10. Aug 2010, 09:47
Wohnort: Wrestedt

Beschriftung in tikz

Beitrag von nixversteh »

Hallo liebe User,

ich erstelle gerade eine Arbeit einer Tochter eines meiner Neffen. Dazu ist es notwendig die Grafik(en) korrekt zu beschriften. Leider reichen meine Kenntnisse nicht aus, um ein kleines p unterhalb des kleinen Dreicks (links) zu schreiben. Kann mir bitte jemand helfen?

Vielen Dank

Gruß

Martin
\documentclass[a4paper,10pt]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage{xcolor}
\colorlet{lightgray}{black!10}
\colorlet{pencil}{black!25}
\usepackage{tkz-euclide}
\usetkzobj{all}
\makeatletter
\def\rechterWinkel{\@ifnextchar[\rechterWinkel@i\rechterWinkel@ii}
\def\rechterWinkel@i[#1](#2,#3,#4){%
  \pgfmathsetmacro{\pos@A}{0.5*#1}
  \pgfmathsetmacro{\pos@B}{0.25*#1}
   \tkzMarkAngle[size=\pos@A](#2,#3,#4)
   \tkzLabelAngle[pos=\pos@B](#2,#3,#4){\tikz \fill (0,0) circle (0.6pt);}
}% 
\def\rechterWinkel@ii(#1,#2,#3){%  
\rechterWinkel@i[1](#1,#2,#3)
}% 
\makeatother
\begin{document}
\begin{tikzpicture}
  \tkzDefPoint(1,1){A}
  \tkzDefShiftPoint[A](8,0){B}
  \tkzDefMidPoint(A,B)\tkzGetPoint{Mab}
  \tkzDrawArc[color=pencil](Mab,B)(A)
  \tkzDefPointWith[K=.2](A,B)\tkzGetPoint{C'}
  \tkzDefPointWith[orthogonal](C',B)\tkzGetPoint{C''}
  \tkzInterLC(C',C'')(Mab,B)\tkzGetSecondPoint{C}
  \tkzDrawPoints(A,B,C)
  \tkzDrawSegments(A,B B,C C,A C',C)
  % Beschriftungen:
  \tkzLabelSegment[below](A,B){$q$}
  \tkzLabelSegment[right](C',C){$h=\sqrt{x}$}
  \tkzLabelPoint[below left](A){$A$}
  \tkzLabelPoint[below right](B){$B$}
  \tkzLabelPoint[above](C){$C$}
  \tkzMarkAngle(B,A,C)
  \tkzLabelAngle[pos=.3](B,A,C){$\alpha$}
  \tkzMarkAngle(C,B,A)
  \tkzLabelAngle[pos=.85](C,B,A){$\beta$}
  \rechterWinkel(A,C,B)
\end{tikzpicture}
\end{document}
PS.: Der Winkel alpha ist etwas zu groß, kann man dies ändern?
Absence of evidence is not evidence of absence

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Deine Frage irritiert mich jetzt etwas. Du schaffst es das q unter die Strecke AB zu setzen und scheiterst dann an am p unter AC'? Wobei das q meiner Meinung nach unter C'B gehört.

Ohne in irgendeine Doku zu schauen, kann man aus
\tkzLabelSegment[below](A,B){$q$}
\tkzLabelSegment[right](C',C){$h=\sqrt{x}$}
ableiten, dass der Punkt zwischen A und B mit C' bezeichnet ist, und damit
   \tkzLabelSegment[below](A,C'){$p$}
   \tkzLabelSegment[below](C',B){$q$} 
die beiden Label an den richtigen Stellen positioniert.

Die andere Frage ist schwieriger, wenn man wie ich, normal nichts mit dem Paket zu tun hat. Ich hätte mir das Bild schnell nur mit TikZ gezeichnet.

Aber die gesuchte Option heißt size. Und den rechten Winkel kann man sich eigentlich auch einfach mit einem Punkt als Label zeichnen.
\documentclass[10pt]{scrartcl} 
\usepackage[utf8]{inputenc} 
\usepackage{tkz-euclide}% lädt tikz und damit auch xcolor
\colorlet{lightgray}{black!10} 
\colorlet{pencil}{black!25}  
\usetkzobj{all} 
\begin{document} 
\begin{tikzpicture} 
   \tkzDefPoint(1,1){A} 
   \tkzDefShiftPoint[A](8,0){B} 
   \tkzDefMidPoint(A,B)\tkzGetPoint{Mab} 
   \tkzDrawArc[color=pencil](Mab,B)(A) 
   \tkzDefPointWith[K=.2](A,B)\tkzGetPoint{C'} 
   \tkzDefPointWith[orthogonal](C',B)\tkzGetPoint{C''} 
   \tkzInterLC(C',C'')(Mab,B)\tkzGetSecondPoint{C} 
   \tkzDrawPoints(A,B,C) 
   \tkzDrawSegments(A,B B,C C,A C',C) 
   % Beschriftungen: 
   \tkzLabelSegment[below](A,C'){$p$}
   \tkzLabelSegment[below](C',B){$q$} 
   \tkzLabelSegment[right](C',C){$h=\sqrt{x}$} 
   \tkzLabelPoint[below left](A){$A$} 
   \tkzLabelPoint[below right](B){$B$} 
   \tkzLabelPoint[above](C){$C$} 
   \tkzMarkAngle[size=.5](B,A,C) 
   \tkzLabelAngle[pos=.3](B,A,C){$\alpha$} 
   \tkzMarkAngle[size=1.1](C,B,A) 
   \tkzLabelAngle[pos=.85](C,B,A){$\beta$} 
   \tkzMarkAngle[size=.5](A,C,B)
   \tkzLabelAngle[pos=.3](A,C,B){\Large$\cdot$}
\end{tikzpicture} 
\end{document}
Gruß
Elke

Bild
Dateianhänge
gl_pq.png
gl_pq.png (6.72 KiB) 4032 mal betrachtet

nixversteh
Forum-Meister
Forum-Meister
Beiträge: 561
Registriert: Di 10. Aug 2010, 09:47
Wohnort: Wrestedt

...

Beitrag von nixversteh »

hallo Elke,

vielen Dank für deine Antwort. Ich habe den Code aus verschiedenen Quellen zusammen getragen, ohne direkt zu wissen, was genau da abläuft, try and error. Mit der sehr umfangreichen Doku komme ich nicht so gut klar, mein Englisch beläuft sich auf vier Jahre Abendschule von 1980 bis 1983. Danach habe ich kein Wort Englisch geschrieben und gesprochen, sorry, war eben nicht angesagt.

Es wäre gut, die Grafik mit tikz zu zeichnen, das kann ich leider auch nicht ... so muss ich eben die Pdf einfügen.

Danke nochmal, auch für deine Geduld.

Gruß

Martin

PS.: Als Grundlage für die Grafik diente dieser Anhang
Dateianhänge
SquarerootThales.png
SquarerootThales.png (8.14 KiB) 4039 mal betrachtet
Absence of evidence is not evidence of absence

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

[d]tkz-euclide[/d] hat bei komplexeren geometrischen Konstruktionen sicher Vorteile. Aber hier ist jedenfalls noch ein Vorschlag nur mit TikZ und angelehnt an Dein Bild:
\documentclass[margin=10pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{angles}

\begin{document}
\begin{tikzpicture}[thick,font=\sffamily]
  \newcommand\Radius{4}
  \newcommand\p{1.6}
  % Koordinaten
  \path 
    (-\Radius,0)coordinate[label=below:A](A)
    ++(\p,0)coordinate[label=below:C'](C')
    +(0,{sqrt((2*\Radius-\p)*\p)})coordinate[label=above:C](C)
    (\Radius,0)coordinate[label=below:B](B)
  ;
  % Halbkreis
  \draw (B)arc[radius=\Radius,start angle=0,end angle=180];
  % Strecke C'C mit Beschriftung
  \draw (C') -- node[right]{$h=\sqrt{x}$}(C);
  % Dreieck
  \draw(A)[line join=bevel]--(B)--(C)--cycle;
  % p und q eintragen
  \path (A)--node[below]{$p=1$}(C')--node[below]{$q=x$}(B);
  %%%
  %%% Punkte markieren (nur falls nötig)
  \foreach \punkt in {A,B,C,C'} \fill[blue!80!black](\punkt)circle[radius=.75mm];
  %%% Winkel (nur falls nötig)
  \pic[pic text=$\cdot$,draw,thin,font=\Large]{angle=A--C--B};
  \pic[pic text=$\alpha$,draw,thin]{angle=B--A--C};
  \pic[pic text=$\beta$,draw,thin,angle radius=1.2cm,angle eccentricity=.8]{angle=C--B--A};
\end{tikzpicture}
\end{document}
Die blauen Punkte und die Beschriftung der Winkel kannst Du einfach auskommentieren, wenn sie nicht benötigt werden.

Bild
Dateianhänge
gl_pq1.png
gl_pq1.png (9.08 KiB) 4033 mal betrachtet

nixversteh
Forum-Meister
Forum-Meister
Beiträge: 561
Registriert: Di 10. Aug 2010, 09:47
Wohnort: Wrestedt

....

Beitrag von nixversteh »

Guten Abend Elke,

wunderbar!
Vielen Dank für Deine wertvolle Hilfe. Kannst du nicht ein Buch über tikz verfassen, in Deutsch?

Lieben Gruß

Martin
Absence of evidence is not evidence of absence

Antworten