¿Superposición de impulsos transparentes (ycomb) con pgfplots?

¿Superposición de impulsos transparentes (ycomb) con pgfplots?

Considere el siguiente MWE:

\documentclass[%
  12pt,
  journal,
  twoside,
  draftcls,
  letterpaper,
]{IEEEtran}

\usepackage{pgfplots}
\usepackage{pgfplotstable}
\usepackage{tikz}
\usetikzlibrary{intersections} %% named intersections "I do not know the key '/tikz/name path global'"


\begin{document}

\pgfplotstableread[col sep=&,row sep=\\]{
  0.0159779999812599 & 0.00398599999607541 \\
  0.0240009999834001 & 0.00802300000214018 \\
  0.0240489999996498 & 4.80000162497163e-05 \\
  0.0280280000006314 & 0.00397900000098161 \\
}\mytable


\begin{tikzpicture}

\begin{scope}
\begin{axis}[
  title={\small my data},
  title style={at={(0.5,0.9)},anchor=center},
  clip=true,
  axis x line=middle,
  axis y line=middle,
  y axis line style=-,
  xmin = 2e-3,
  xmax = 38e-3,
  ymin = 0,
  ymax = 1.5,
  xlabel={$t$\,[ms]},
  xlabel style={at={(axis description cs:1.01,+0.0)},anchor=west},
  ylabel={}, %{$U$\,[V]},
  ylabel style={at={(axis description cs:-0.02,1.01)},anchor=south},
  xtick=data,
  scaled x ticks=base 10:3,
  xtick scale label code/.code={},
  x tick label style={
    rotate=-45,
    anchor=west,
    /pgf/number format/fixed,
    /pgf/number format/fixed zerofill,
    /pgf/number format/precision=3,
  },
  ymajorticks=false,
  yminorticks=false,
  tick label style={font=\small,},
  legend cell align=left,
  legend pos=outer north east,
]

\addplot[
  name path global=afunc,
  ycomb,
  draw=black,
%   opacity=0.2, % global
  mark=*, mark options={
    draw=black,
    fill=black,
    opacity=0.2, % on mark
  },
  line width=2pt,
]
  table[x index = 0,y expr=1] \mytable ;

\end{axis}
\end{scope}

\end{tikzpicture}
\end{document}

Con el código tal como está, evinceel pdf se representa como (haga clic para ver la imagen en tamaño completo):

prueba-1.png

Con la opacidad "% global" habilitada, el pdf se representa como:

prueba-2.png

... sin embargo, lo que quiero es que los "impulsos" sean transparentes, para que adquieran un color más intenso cuando se superpongan - y ninguna de las imágenes de arriba muestra eso: el global es, bueno, global - y el "local "¿Uno aplicado al estilo de marca parece ignorado?

Además, ¿alguna forma de conseguir que las marcas (círculos) de los impulsos se llenen por completo? (Parece como si hubiera un agujero en el interior, si miras de cerca las imágenes en tamaño completo)

¿Alguna forma de lograr lo que quiero? El archivo de registro dice:

Paquete: pgfplots 29/12/2011 v1.5.1 (git show 1.5.1-4-g53e640f)

Respuesta1

Bueno, tengo una especie de truco para trabajar: primero, probé ybarel estilo, que es bastante similar, pero parece que también aplica opacidad/transparencia en el gráfico en su conjunto, no en barras/líneas individuales.

Así que intenté recorrer los datos de la tabla y dibujar líneas individuales con opacidad, y finalmente parece haber funcionado; Los cambios relevantes en el MWE anterior son:

...
\usepackage{pgfplotstable}
...
]

\def\opac{0.4}

\addplot[
  name path global=afunc,
  only marks, %ycomb,
  draw=none, %black,
  %opacity=\opac, % global
  mark=*, mark options={
    draw=none, %black,
    %fill=black,
    opacity=\opac, % on mark; both stroke and fill (and stroke will overlap fill - twice the opacity!? even with draw=none?)
  },
  %line width=2pt, % also changes the line around the mark!
]
  table[x index = 0,y expr=1] \mytable ;


% \addplot[
%   name path global=afuncb,
%   ybar,
%   bar width=2pt,
%   %fill=black,
%   %draw=none,
%   opacity=0.4,
% ]
%   table[x index = 0,y expr=1] \mytable ;


\pgfplotstableforeachcolumnelement{0}\of\mytable\as\cx{%
  % \node{I have now cell element ‘\cx’ at row index ‘\pgfplotstablerow’;\par};
  \edef\temp{ %
    \noexpand\draw[%
      line width=2pt, %semithick,
      draw=black,%
      fill=none,%
      opacity=\opac,%
    ] ({axis cs:\cx,0}) -- ({axis cs:\cx,1}); %
  }
  \temp
}

\end{axis}
...

... y la salida es:

prueba-3.png

Dejé el estilo "sólo marcas" sólo para facilitar la comparación visual del color superpuesto. Lo único que me molesta ahora es un trazo visible alrededor de las marcas circulares, pero eso no es gran cosa...

información relacionada