
Tengo un pequeño problema con algunas flechas pero parece que no encuentro una solución. Tenga en cuenta que esta pregunta es diferente deConfigurar el color de relleno solo para las puntas de las flechas de TikZ (y no para la ruta en sí), ya que allí el OP pretendía hacer toda la flecha de un color.
Si quisiera que la punta de la flecha fuera negra y el recorrido de la flecha fuera de color, simplemente diría draw=black
que necesito lo contrario, un recorrido negro con una punta de color.
Entonces esto es lo que obtengo:
Y este es mi código:
\documentclass[10pt]{article}
\usepackage[a4paper, margin=1cm]{geometry}
\usepackage[utf8]{inputenc}
\usepackage{rotating}
\usepackage{amsmath}
\usepackage{pgfplots}
\usepackage{tikz}
\usetikzlibrary{arrows,backgrounds,decorations,shapes,shapes.multipart,positioning}
\pgfplotsset{compat=1.7}
\begin{document}
\definecolor{blue}{RGB}{0,127,255}
\tikzset{
opera/.style={fill=white, inner sep=0pt, right=3mm, text width= 5cm,font=\footnotesize},
tear/.style={draw=black, fill=blue, -*},.
}
\begin{tikzpicture}
\draw[tear] (12, 5) -- (12,4) -- (10,3) -- (10,2) node[opera] at (10,2){Not the path!};
\end{tikzpicture}
\end{document}
Intenté eliminar todo lo posible para que el código sea mínimo, así que no se preocupe si ve paquetes o bibliotecas no utilizados.
He pensado como posible solución agregar una opción como >=stealth
intentar establecer el color usando las puntas de las flechas o
o . *
Ninguno funcionó.
Respuesta1
la siguiente respuesta se basa en markings
y postaction
.
\documentclass[10pt]{article}
\usepackage[a4paper, margin=1cm]{geometry}
\usepackage[utf8]{inputenc}
\usepackage{rotating}
\usepackage{amsmath}
\usepackage{pgfplots}
\usepackage{tikz}
\usetikzlibrary{arrows,backgrounds,decorations.markings,shapes,shapes.multipart,positioning}
\pgfplotsset{compat=1.7}
\begin{document}
\definecolor{blue}{RGB}{0,127,255}
\tikzset{
opera/.style={fill=white, inner sep=0pt, right=3mm, text width= 5cm,font=\footnotesize},
tear/.style={draw=black,-,
decoration={markings,mark=at position 1 with {\arrow[draw=black,fill=blue]{*}}},
postaction=decorate},.
}
\begin{tikzpicture}
\draw[tear] (12, 5) -- (12,4) -- (10,3) -- (10,2);
\end{tikzpicture}
\end{document}
que produce:
Quité la punta de flecha de tu tear
estilo y agregué decoration={markings,mark=at position 1 with {\arrow[draw=black,fill=blue]{*}}}
y postaction=decorate
. De esta manera la punta de flecha se dibuja como decoración al final de tu segmento, sin llenar el camino. También debe cargar la decoración como postaction
with postaction=decorate
, de modo que solo se sobrescriba la punta de la flecha y no toda la línea.
Editar:El enfoque anterior ahora (con el lanzamiento de PGF 3.0.0) está obsoleto:
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{arrows.meta}
\definecolor{myblue}{RGB}{0,127,255}
\tikzset{
opera/.style={
fill=white,
inner sep=0pt,
right=3mm,
text width= 5cm,
font=\footnotesize
},
tear/.style={
-{Circle[fill=myblue]} %new code, requires arrows.meta and at least PGF 3.0.0
},
}
\begin{document}
\begin{tikzpicture}
\draw[tear] (12, 5) -- (12,4) -- (10,3) -- (10,2) node[opera] {Not the path!};
\end{tikzpicture}
\end{document}