Hallo,

ich möchte eine logarithmische Abstrahlfunktion in einem Polarplot zwischen -90 und +90 Grad darstellen. Bisher versuche ich es wie folgt:

Open in writeLaTeX
\documentclass[]{standalone}

\usepackage{pgfplots}
\usepgfplotslibrary{polar}
\usetikzlibrary{shapes.geometric}

\makeatletter
\def\pgftransform@angle{0}
\pgfplotsset{
    xticklabel style={
        inner xsep=1pt,
        ellipse,
        anchor=\tick-(180-\pgftransform@angle)
    },
    yticklabel style={
        anchor=\pgftransform@angle
    }
}
\makeatother

\begin{document}
\begin{tikzpicture}
\begin{polaraxis}[xmin=-90,xmax=90,rotate=90,
    domain=-90:90,
    xticklabel=$\pgfmathprintnumber{\tick}^\circ$,
    no markers]
 \addplot +[blue, ultra thick,domain=0:-60] {10*log10((sin(pi*54*sin(x)/3.43))/(pi*(54/3.43)*sin(x))^2)};
\end{polaraxis}
\end{tikzpicture}
\end{document}

alt text

Problem ist nun, dass ich die Skalierung nicht in den negativen Bereich bekomme. Laut meinen bisher durchgeführten Berechnung (mathcad), wäre ein Wertebereich von -60 bis 0 interessant. Kann mir jemand sagen wie das funktioniert?

Letztendlich sollte es wie folgt aussehen wenn ich die Parameter der Funktion (a: 5, b: 54 [siehe code], c: 80) variiere.

a) alt text

b) alt text

c) alt text

Viele Grüße

Dirk

gefragt 03 Jun '14, 12:14

Dirk's gravatar image

Dirk
265210
Akzeptiert: 66%

bearbeitet 03 Jun '14, 14:06


So sollte es klappen:

Open in writeLaTeX
\documentclass[]{standalone}

\usepackage{pgfplots}
\usepgfplotslibrary{polar}
\usetikzlibrary{shapes.geometric}

\makeatletter
\def\pgftransform@angle{0}
\pgfplotsset{
    xticklabel style={
        inner xsep=1pt,
        ellipse,
        anchor=\tick-(180-\pgftransform@angle)
    },
    yticklabel style={
        anchor=\pgftransform@angle
    }
}
\makeatother

\begin{document}
\begin{tikzpicture}
\begin{polaraxis}[xmin=-90,xmax=90,rotate=90,
    domain=-90:90,
    xticklabel=$\pgfmathprintnumber{\tick}^\circ$,
    y coord trafo/.code=\pgfmathparse{#1+60},                    %%   <-- entscheidende Zeilen
   y coord inv trafo/.code=\pgfmathparse{#1-60}                  %%   <-- entscheidende Zeilen
    no markers]
 \addplot +[blue, thin,mark=none] {10*log10((sin(pi*54*sin(x)/3.43))/(pi*(54/3.43)*sin(x))^2)};
\end{polaraxis}
\end{tikzpicture}
\end{document}

Hilfe gefunden bei: TeX - LaTeX Stack Exchange

Viele Grüße

Dirk

Permanenter link

beantwortet 11 Jun '14, 13:09

Dirk's gravatar image

Dirk
265210

Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Aktuelle Buch-Infos

LaTeX Cookbook

LaTeX Beginners Guide

Limitierter Rabatt ebook
50% Coupon code tDRet6Y

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×160

Frage gestellt: 03 Jun '14, 12:14

Frage wurde angeschaut: 1,469 Mal

Zuletzt aktualisiert: 11 Jun '14, 13:09