答案1
我做了一些改动,比如背景颜色改为了点状,但 Tikz 中可以做出完全相同的插图。我的插图如下。
蒂克兹
\documentclass{article}
\usepackage{graphicx}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw [thick] (2,2) circle (3cm);
\draw (-2,-2) rectangle (6,6);
\draw (0,5.5) node{Cohen class: $\sigma * Wig$};
\draw [opacity=0.4,fill=black!15,rounded corners=2ex] (-1.9,-1.9) rectangle (5.9,2);
\draw (1,-1.6) node{Generalised spectograms: $Sp_{\phi,\psi}$};
\draw (2,2.5) node[circle,fill,inner sep=1pt,label=below:{$Q=\int_{[0,1]}Wig_{\tau} d\tau$}]{};
\draw (2,-1) node[circle,fill,inner sep=1pt,label=right:{$Sp_{\phi}$(classical spectogram)}]{};
\draw (2,5) node[circle,fill,inner sep=1pt,label=right:{$Wig_{1/2}=Wig$ (Wigner)}]{};
\draw (-0.6,3.5) node[circle,fill,inner sep=1pt,label=left:{$Wig_{\tau}$ ($\tau$-Wigner)}]{};
\draw (5,2) node[circle,fill,inner sep=1pt,label=above right:{$Wig_1=Sp_{1,\delta}=R^*$}]{};
\draw (5,1.5) node[circle,fill,inner sep=0pt,label=above right:{(conjugate-Rihaczek)}]{};
\draw (-1,2) node[circle,fill,inner sep=1pt,label=above left:{$Wig_0=Sp_{\delta,1}=R$}]{};
\draw (-1,1.5) node[circle,fill,inner sep=0pt,label=above left:{(Rihaczek)}]{};
\end{tikzpicture}
\end{document}
有关的
\\
我不明白为什么Tikz-draw 标签中的换行功能不起作用:如何在 TikZ 节点标签中引入换行符?应该这样,,\draw (5,2) node[circle,fill,inner sep=1pt,label=above right:{$Wig_1=Sp_{1,\delta}=R^*$\\(conjugate-Rihaczek)}]{};
为什么换行不起作用?
对于自定义背景,如圆点或五角星
使用\usetikzlibrary{patterns}
包来自定义背景,比如下面的星星或圆点,以及其他指令这里。
\documentclass{article}
\usepackage{graphicx}
\usepackage{tikz}
\usetikzlibrary{patterns}
\begin{document}
\begin{tikzpicture}
\draw [thick] (2,2) circle (3cm);
\draw (-2,-2) rectangle (6,6);
\draw (0,5.5) node{Cohen class: $\sigma * Wig$};
\draw [opacity=0.4,fill=black!15,pattern=dots,rounded corners=2ex] (-1.9,-1.9) rectangle (5.9,2);
\draw (1,-1.6) node{Generalised spectograms: $Sp_{\phi,\psi}$};
\draw (2,2.5) node[circle,fill,inner sep=1pt,label=below:{$Q=\int_{[0,1]}Wig_{\tau} d\tau$}]{};
\draw (2,-1) node[circle,fill,inner sep=1pt,label=right:{$Sp_{\phi}$(classical spectogram)}]{};
\draw (2,5) node[circle,fill,inner sep=1pt,label=right:{$Wig_{1/2}=Wig$ (Wigner)}]{};
\draw (-0.6,3.5) node[circle,fill,inner sep=1pt,label=left:{$Wig_{\tau}$ ($\tau$-Wigner)}]{};
\draw (5,2) node[circle,fill,inner sep=1pt,label=above right:{$Wig_1=Sp_{1,\delta}=R^*$}]{};
\draw (5,1.5) node[circle,fill,inner sep=0pt,label=above right:{(conjugate-Rihaczek)}]{};
\draw (-1,2) node[circle,fill,inner sep=1pt,label=above left:{$Wig_0=Sp_{\delta,1}=R$}]{};
\draw (-1,1.5) node[circle,fill,inner sep=0pt,label=above left:{(Rihaczek)}]{};
\end{tikzpicture}
\end{document}
这里更像原版
\usepackage{tikz}
\usetikzlibrary{patterns}
\begin{document}
\begin{tikzpicture}
\draw [thick] (2,2) circle (3cm);
\draw (-2,-2) rectangle (6,6);
\draw (0,5.5) node{Cohen class: $\sigma * Wig$};
\draw [opacity=0.4,fill=black!15,pattern=dots] (-1.9,-1.9) rectangle (5.9,2);
\draw (1,-1.6) node{Generalised spectograms: $Sp_{\phi,\psi}$};
\draw (2,2.5) node[circle,fill,inner sep=1pt,label=below:{$Q=\int_{[0,1]}Wig_{\tau} d\tau$}]{};
\draw (2,-1) node[circle,fill,inner sep=1pt,label=right:{$Sp_{\phi}$(classical spectogram)}]{};
\draw (2,5) node[circle,fill,inner sep=1pt,label=right:{$Wig_{1/2}=Wig$ (Wigner)}]{};
\draw (-0.6,3.5) node[circle,fill,inner sep=1pt,label=left:{$Wig_{\tau}$ ($\tau$-Wigner)}]{};
\draw (5,2) node[circle,fill,inner sep=1pt,label=above right:{$Wig_1=Sp_{1,\delta}=R^*$}]{};
\draw (5,1.5) node[circle,fill,inner sep=0pt,label=above right:{(conjugate-Rihaczek)}]{};
\draw (-1,2) node[circle,fill,inner sep=1pt,label=above left:{$Wig_0=Sp_{\delta,1}=R$}]{};
\draw (-1,1.5) node[circle,fill,inner sep=0pt,label=above left:{(Rihaczek)}]{};
\end{tikzpicture}
\end{document}
答案2
这是一个pstricks
解决方案,需要以下代码,取自pstricks 页面在 TUG 网站上,它定义了新的填充样式:
% D.G. addition begin - Sep. 1, 2002
% To define dashed and dotted hatched styles
\ProvidesPackage{pst-hatch}%% Added B. A. Nov. 23, 2016
\RequirePackage{pstricks}%% added
\def\pshs@solid{0 setlinecap }
\def\pshs@dashed{[ \psk@dash ] 0 setdash }
\def\pshs@dotted{[ 0 \psk@dotsep CLW add ] 0 setdash 1 setlinecap }
\def\psset@hatchstyle#1{%
\@ifundefined{pshs@#1}%
{\@pstrickserr{Hatch style `#1' not defined}\@eha}%
{\edef\pshatchstyle{#1}}}
\psset@hatchstyle{solid}
\def\pst@linefill{%
% D.G. modification begin - Sep. 1, 2002
\@nameuse{pshs@\pshatchstyle}
% D.G. modification end
\psk@hatchangle rotate
\psk@hatchwidth SLW
\pst@usecolor\pshatchcolor
\psk@hatchsep
\tx@LineFill}
\pst@def{LineFill}<{%
gsave
abs CLW add
/a ED
a 0 dtransform
round exch round exch 2 copy idtransform
exch Atan rotate idtransform
pop
/a ED
.25 .25 itransform
pathbbox
/y2 ED
a Div ceiling cvi
/x2 ED
/y1 ED
a Div cvi
/x1 ED
/y2 y2 y1 sub def
clip
newpath
% D.G. modification begin - Sep. 1, 2002
% 2 setlinecap
% D.G. modification end
systemdict
/setstrokeadjust
known { true setstrokeadjust } if
x2 x1 sub 1 add
{ x1 a mul y1 moveto
0 y2 rlineto
stroke
/x1 x1 1 add def } repeat
grestore
pop pop}>
该图的 pstricks 代码:
\documentclass[border=12pt]{standalone}
\usepackage{amsmath} %
\DeclareMathOperator\Wig{\mathit{Wig}}
\DeclareMathOperator\Sp{\textit{Sp}}
\usepackage{pstricks-add, pst-hatch, auto-pst-pdf}%
\begin{document}
\small
\psset{linejoin=1, unit =3cm }
\begin{pspicture}[PointSymbol=none](-2,-2)(2,2)
\psframe(-1.65,-1.6)(1.65,1.6)
\psframe[fillstyle=vlines, hatchstyle=dotted](-1.55,-1.55)(1.55,0)
\pscircle(0,0){1}
\dotnodes(1; 0){A}(1; 90){B}(1; 135){C}(1; 180){D}(1; 270){E}(0.25; 90){F}
\uput[d](A){\begin{tabular}{c}$\Wig₁ = \Sp_{1,δ} = R^*$ \\(conjugate-Rihaczeck)\end{tabular}}
\uput[-75](D){\begin{tabular}{c}$\Wig₀ = \Sp_{δ,1} = R$ \\(Rihaczeck)\end{tabular}}
\uput[50](B){$ \Wig_{1/2} = \Wig$\quad(Wigner)}
\uput[-70](C){$ Wig_τ\quad\tau$-Wigner}
\uput[65](E){$\Sp_\phi$ (classical spectrogram)}
\uput[-65](F){$Q = ∫_{[0,1]}\Wig_τ\,dτ$}
\rput [l](-1.5,-1.4){\textbf{generalised spectrogram: } $\Sp_{\phi, ψ}$}
\rput[l](-1.5,1.4){\textbf{Cohen class: } $σ*\Wig$}
\end{pspicture}
\end{document}