极坐标图——关键参数的布局和提取

极坐标图——关键参数的布局和提取

让 S 成为某种函数,取决于方向和频率,例如:环境背景噪音。我在矩形网格上定义了 S,并希望将其绘制在极坐标网格上。到目前为止,我可以绘制地形(等高线)。

\documentclass{article}
\usepackage{pgfplots}
\usepgfplotslibrary{polar}

\begin{document}

\begin{tikzpicture}
\begin{polaraxis}[
title=\texttt{Station 1 (quunatity [units])},
ymax=.15,  grid=major, xmin=30,
yticklabels={0,,0.1,,0.2},
xlabel={\texttt{quantity (units)}$\rightarrow$},
colorbar
]
    \addplot[ contour prepared={labels=false}, contour prepared format=matlab]
file {curvelivello.sp2};
\end{polaraxis}
\end{tikzpicture}

\end{document}

以下是我的问题:

  1. 我希望将 zlabel 放置在颜色条的顶部(正上方),颜色条位于极坐标图的右侧。ylabel 可以留在底部,但 xlabel 应对齐并位于从极坐标图中心出发的一条射线旁边。我该怎么做?
  2. 我不想画轮廓线,而是想用某种颜色填充空间。我想的是某种阴影。就像在矩形网格上定义的“平面”表面图一样。
  3. 现在到了最重要的部分:给定 PGFplots 读取的数据,除了绘图之外,我还想从绘制的数据中提取一些基本统计数据。例如:在两个轴上定位 S 达到的峰值(在此特定情况下为峰值频率和峰值方向)并绘制它(像从圆心向外射出的箭头,粗,红色...)并将其放在图例上。

可行的?

提前感谢您的帮助和评论。

马可

PS 以下是用于生成我的轮廓线的基于 matlab 的格式(根据要求)

0.006   35.000
99.347  0.062
120.000 0.059
150.000 0.056
180.000 0.055
210.000 0.055
240.000 0.056
270.000 0.059
290.917 0.062
300.000 0.064
320.125 0.071
330.000 0.077
337.057 0.081
346.617 0.092
347.017 0.106
332.627 0.120
330.000 0.122
300.000 0.136
291.482 0.138
270.000 0.144
240.000 0.148
210.000 0.150
180.000 0.150
150.000 0.148
120.000 0.144
98.788  0.138
90.000  0.136
60.000  0.122
57.587  0.120
43.064  0.106
43.467  0.092
53.117  0.081
60.000  0.077
70.094  0.071
90.000  0.064
99.347  0.062
0.012   31.000
165.383 0.062
180.000 0.061
210.000 0.061
224.441 0.062
240.000 0.063
270.000 0.066
289.722 0.071
300.000 0.074
316.253 0.081
327.294 0.092
327.761 0.106
311.104 0.120
300.000 0.126
270.000 0.134
240.000 0.137
226.737 0.138
210.000 0.139
180.000 0.139
163.077 0.138
150.000 0.137
120.000 0.134
90.000  0.126
79.189  0.120
62.394  0.106
62.865  0.092
73.998  0.081
90.000  0.074
100.535 0.071
120.000 0.066
150.000 0.063
165.383 0.062
0.018   27.000
129.729 0.071
150.000 0.068
180.000 0.066
210.000 0.066
240.000 0.068
260.302 0.071
270.000 0.072
298.620 0.081
300.000 0.082
315.003 0.092
315.702 0.106
300.000 0.117
291.759 0.120
270.000 0.128
240.000 0.132
210.000 0.134
180.000 0.134
150.000 0.132
120.000 0.128
98.513  0.120
90.000  0.116
74.552  0.106
75.257  0.092
90.000  0.082
91.703  0.081
120.000 0.072
129.729 0.071
0.024   27.000
170.180 0.071
180.000 0.070
210.000 0.070
219.672 0.071
240.000 0.072
270.000 0.077
282.910 0.081
300.000 0.090
302.713 0.092
303.644 0.106
300.000 0.108
273.691 0.120
270.000 0.122
240.000 0.128
210.000 0.130
180.000 0.130
150.000 0.128
120.000 0.122
116.443 0.120
90.000  0.108
86.710  0.106
87.649  0.092
90.000  0.091
107.293 0.081
120.000 0.077
150.000 0.072
170.180 0.071
0.030   21.000
123.324 0.081
150.000 0.076
180.000 0.074
210.000 0.074
240.000 0.076
266.766 0.081
270.000 0.082
291.525 0.092
292.553 0.106
270.000 0.116
253.470 0.120
240.000 0.123
210.000 0.126
180.000 0.126
150.000 0.123
136.499 0.120
120.000 0.116
97.724  0.106
98.744  0.092
120.000 0.082
123.324 0.081
0.036   21.000
141.306 0.081
150.000 0.079
180.000 0.077
210.000 0.077
240.000 0.079
248.619 0.081
270.000 0.087
280.650 0.092
281.881 0.106
270.000 0.111
240.000 0.119
227.611 0.120
210.000 0.122
180.000 0.122
162.193 0.120
150.000 0.119
120.000 0.111
108.314 0.106
109.536 0.092
120.000 0.087
141.306 0.081
0.043   19.000
165.937 0.081
180.000 0.080
210.000 0.080
223.888 0.081
240.000 0.083
269.740 0.092
270.000 0.094
271.210 0.106
270.000 0.106
240.000 0.115
210.000 0.119
180.000 0.119
150.000 0.115
120.000 0.106
118.903 0.106
120.000 0.095
120.377 0.092
150.000 0.083
165.937 0.081
0.049   13.000
132.787 0.092
150.000 0.087
180.000 0.083
210.000 0.083
240.000 0.087
257.216 0.092
259.102 0.106
240.000 0.111
210.000 0.115
180.000 0.115
150.000 0.111
130.918 0.106
132.787 0.092
0.055   13.000
145.197 0.092
150.000 0.091
180.000 0.086
210.000 0.086
240.000 0.091
244.692 0.092
246.810 0.106
240.000 0.108
210.000 0.112
180.000 0.112
150.000 0.108
143.098 0.106
145.197 0.092
0.061   9.000
163.076 0.092
180.000 0.090
210.000 0.090
226.734 0.092
230.718 0.106
210.000 0.109
180.000 0.109
159.069 0.106
163.076 0.092

编辑:我想要的是画填充极坐标中的轮廓斑块,而不是单纯的轮廓线(未填充)。绘制该点相当于绘制某种斑点(在径向坐标系上),其末端被限定在某个扇区(方向)内,并限制在两个圆(频率最小值和最大值)之间。

你可以看看下面的图片来更清楚地了解我的想法:

在此处输入图片描述

实现这一点后,根据绘制的数据,我希望绘制在同一地块上 绘制图表的扇区所对应的统计指标。例如:频率和方向对应于峰值,即对应于我绘制的函数所达到的最高值(例如,用红色绘制相应的频率和方向)。

希望解释清楚。

答案1

一个实验(已解决 30%,剩余 70%...)

我已经手动从 Matlab 格式重新排列了您的数据(带有和不带有可能存储级别的第三列),但我正在手动设置每个图/轮廓的颜色,因为我还不知道如何从使用过的颜色colormapshading特定位置提取颜色。

注意:其格式包含每个轮廓的点的级别和数量,然后是该点的角度和距离、每条线的一个点,以及另一个轮廓的点的级别和数量等等。

这可能是 TeX.SX 上的一个单独问题,因为该颜色介于两个已知颜色之间,并且彼此之间的距离已知。我原本想用自己的颜色图来处理它,然后很容易匹配这些级别的颜色,但我现在不赞成这样做。与此相关的主题是PGFPlots:将条形图的填充与颜色条同步

我现在附上我得到的信息。请注意,gray颜色与原始颜色不匹配,原始colorbar颜色顶部使用红色,我故意这样做是为了突出这种方法中出现的新问题。

\documentclass[margin=10]{standalone}
\usepackage{pgfplots}
\usepgfplotslibrary{polar}
%\pgfplotsset{compat=newest} % 1.10

\begin{document}
%\ifx\relax % An original version...
\begin{tikzpicture}
\begin{polaraxis}[
  title=\texttt{Station 1 (quantity [units])}, colorbar,
  ymax=.15, grid=major, xmin=30, yticklabels={0,,0.1,,0.2},
  %xlabel={\texttt{quantity (units)}$\rightarrow$},
  ]
\addplot[contour prepared={labels=false}, contour prepared format=matlab] file {mal-polar-data.txt};
\end{polaraxis}
\end{tikzpicture}
%\fi% End of an original version...
\hspace{8mm}%
\begin{tikzpicture}
\begin{polaraxis}[title=\texttt{Station 1 (quantity [units])}, colorbar, ymax=.17, 
 grid=major, xmin=30, yticklabels={0,,0.1,,0.2}, 
%xlabel={\texttt{quantity (units)}$\rightarrow$}
]
\addplot[mark=none, fill=blue] table { % contour prepared, color is 0.006, points 35
99.347  0.062 0.006
120.000 0.059 0.006
150.000 0.056 0.006
180.000 0.055 0.006
210.000 0.055 0.006
240.000 0.056 0.006
270.000 0.059 0.006
290.917 0.062 0.006
300.000 0.064 0.006
320.125 0.071 0.006
330.000 0.077 0.006
337.057 0.081 0.006
346.617 0.092 0.006
347.017 0.106 0.006
332.627 0.120 0.006
330.000 0.122 0.006
300.000 0.136 0.006
291.482 0.138 0.006
270.000 0.144 0.006
240.000 0.148 0.006
210.000 0.150 0.006
180.000 0.150 0.006
150.000 0.148 0.006
120.000 0.144 0.006
98.788  0.138 0.006
90.000  0.136 0.006
60.000  0.122 0.006
57.587  0.120 0.006
43.064  0.106 0.006
43.467  0.092 0.006
53.117  0.081 0.006
60.000  0.077 0.006
70.094  0.071 0.006
90.000  0.064 0.006
99.347  0.062  0.006
};
\addplot[mark=none, fill=blue!30] table { % color 0.012,   points 31
165.383 0.062
180.000 0.061
210.000 0.061
224.441 0.062
240.000 0.063
270.000 0.066
289.722 0.071
300.000 0.074
316.253 0.081
327.294 0.092
327.761 0.106
311.104 0.120
300.000 0.126
270.000 0.134
240.000 0.137
226.737 0.138
210.000 0.139
180.000 0.139
163.077 0.138
150.000 0.137
120.000 0.134
90.000  0.126
79.189  0.120
62.394  0.106
62.865  0.092
73.998  0.081
90.000  0.074
100.535 0.071
120.000 0.066
150.000 0.063
165.383 0.062 
};
\addplot[mark=none, fill=yellow] table { % color 0.018,   points 27
129.729 0.071
150.000 0.068
180.000 0.066
210.000 0.066
240.000 0.068
260.302 0.071
270.000 0.072
298.620 0.081
300.000 0.082
315.003 0.092
315.702 0.106
300.000 0.117
291.759 0.120
270.000 0.128
240.000 0.132
210.000 0.134
180.000 0.134
150.000 0.132
120.000 0.128
98.513  0.120
90.000  0.116
74.552  0.106
75.257  0.092
90.000  0.082
91.703  0.081
120.000 0.072
129.729 0.071 
};
\addplot[mark=none, fill=orange] table { % color 0.024,   points 27
170.180 0.071
180.000 0.070
210.000 0.070
219.672 0.071
240.000 0.072
270.000 0.077
282.910 0.081
300.000 0.090
302.713 0.092
303.644 0.106
300.000 0.108
273.691 0.120
270.000 0.122
240.000 0.128
210.000 0.130
180.000 0.130
150.000 0.128
120.000 0.122
116.443 0.120
90.000  0.108
86.710  0.106
87.649  0.092
90.000  0.091
107.293 0.081
120.000 0.077
150.000 0.072
170.180 0.071 
};
\addplot[mark=none, fill=orange!50] table { % color 0.030,   points 21
123.324 0.081
150.000 0.076
180.000 0.074
210.000 0.074
240.000 0.076
266.766 0.081
270.000 0.082
291.525 0.092
292.553 0.106
270.000 0.116
253.470 0.120
240.000 0.123
210.000 0.126
180.000 0.126
150.000 0.123
136.499 0.120
120.000 0.116
97.724  0.106
98.744  0.092
120.000 0.082
123.324 0.081 
};
\addplot[mark=none, fill=red] table { % color 0.036   points 21
141.306 0.081
150.000 0.079
180.000 0.077
210.000 0.077
240.000 0.079
248.619 0.081
270.000 0.087
280.650 0.092
281.881 0.106
270.000 0.111
240.000 0.119
227.611 0.120
210.000 0.122
180.000 0.122
162.193 0.120
150.000 0.119
120.000 0.111
108.314 0.106
109.536 0.092
120.000 0.087
141.306 0.081 
};
\addplot[mark=none, fill=red!50] table { % color 0.043   points 19
165.937 0.081
180.000 0.080
210.000 0.080
223.888 0.081
240.000 0.083
269.740 0.092
270.000 0.094
271.210 0.106
270.000 0.106
240.000 0.115
210.000 0.119
180.000 0.119
150.000 0.115
120.000 0.106
118.903 0.106
120.000 0.095
120.377 0.092
150.000 0.083
165.937 0.081 
};
\addplot[mark=none, fill=red!20] table { % color 0.049   points 13
132.787 0.092
150.000 0.087
180.000 0.083
210.000 0.083
240.000 0.087
257.216 0.092
259.102 0.106
240.000 0.111
210.000 0.115
180.000 0.115
150.000 0.111
130.918 0.106
132.787 0.092 
};
\addplot[mark=none, fill=gray] table { % color 0.055   points 13
145.197 0.092
150.000 0.091
180.000 0.086
210.000 0.086
240.000 0.091
244.692 0.092
246.810 0.106
240.000 0.108
210.000 0.112
180.000 0.112
150.000 0.108
143.098 0.106
145.197 0.092
};
\addplot[mark=none, fill=gray!50] table { % color 0.061   points 9
163.076 0.092
180.000 0.090
210.000 0.090
226.734 0.092
230.718 0.106
210.000 0.109
180.000 0.109
159.069 0.106
163.076 0.092 
};
\end{polaraxis}
\end{tikzpicture}

\end{document}

姆韦

相关内容