使用 pgfplots/tikz 的极坐标图

使用 pgfplots/tikz 的极坐标图

我想使用 Latex 上的 pgfplots/tikz 包重现下图。我与您分享一个 .csv 文件来绘制类似的图形。重要的是要注意 y 轴位于图外(左侧),半径有负值和正值(y 值)。我已经花了很多时间寻找一个好的结果,但我没有发现任何人这样做。该图与天线主题有关。

有人能帮我吗?你可以把 y 轴部分视为一个加分点!该图已经是一个巨大的贡献。

提前致谢

csv 文件链接
将第一列视为角度,将第二列视为半径。

极坐标图

答案1

如果我理解正确的话,您希望将 -40 dB 和 +20 dB 之间的所有值绘制在正域中,其中 -40 dB 是电位器的原点。为此,您需要转换数据,然后反向转换轴标签,请参阅极坐标图中的 y 值为负

为了使 y 轴位于图之外,您可以使用 Gonzalo Medina 的答案中的方法设置轴线偏移?

\documentclass[10pt,border=10pt]{standalone}
\usepackage{pgfplots}
\usepgfplotslibrary{polar}
\pgfplotsset{compat=1.12}    

\begin{document}
\begin{tikzpicture}
\begin{polaraxis}[
   xticklabel=$\pgfmathprintnumber{\tick}^\circ$,
   xtick={0,30,...,330},
   ytick={-40,-30,...,20},
   ymin=-40, ymax=20,
   y coord trafo/.code=\pgfmathparse{#1+40},
   rotate=-90,
   y coord inv trafo/.code=\pgfmathparse{#1-40},
   x dir=reverse,
   xticklabel style={anchor=-\tick-90},
   yticklabel style={anchor=east, xshift=-4.75cm},
   y axis line style={yshift=-4.75cm},
   ytick style={yshift=-4.75cm}
]
\addplot [no markers, thick, blue] table [col sep=comma, y=theta] {gain_xy.csv};
\addplot [no markers, thick, red] table [col sep=comma, y=phi] {gain_xy.csv};
\end{polaraxis}
\end{tikzpicture}
\end{document}

答案2

这是使用极坐标图的一个选项pgfplots.csv提供文件:

在此处输入图片描述

代码:

\documentclass{article} 
\usepackage{pgfplots} 
\usepgfplotslibrary{polar}
\pgfplotsset{compat=newest}

\pgfplotstableread[col sep=comma]{gain_xy.csv}{\loadeddata}

\begin{document} 

\begin{tikzpicture}
\begin{polaraxis}[
  y dir=reverse,
  rotate=90,
  xticklabel style={anchor=-\tick-90},
  grid=both,
  major grid style={dotted},  
  minor grid style={dotted},  
  minor x tick num=1,
  minor y tick num=1,
  xtick={0,30,...,330},
  ytick={0,10,...,60},
  yticklabels={}
]
\addlegendentry{$E_{\theta}$};
\addplot[
  data cs=polar,
  thick,
  red,
  samples=200
] table[x index=0,y index=1] {\loadeddata};
\addplot[
  data cs=polar,
  blue,
  thick,samples=200
] table[x index=0,y index=2] {\loadeddata};
\addlegendentry{$E_{\phi}$};
\end{polaraxis}
\end{tikzpicture} 

\end{document}

我不明白附图左边的垂直轴。

相关内容