
Eu tenho o seguinte conjunto de dados:
X= 130, 65, 45, 22, 14, 10
Y= 1.8, 1.5, 1.2, 1.1, 0.9, 0.8
Primeiro de tudo, o código que escrevi parece muito estranho:
\begin{tikzpicture}
\begin{axis}[
title={My Chart},
xlabel={X axis},
ylabel={Y axis},
ymin=0, ymax=2,
xmin=0, xmax=140,
ytick={1.8,1.5,1.2,1.1,0.9,0.8},
xtick={10,14,22,45,65,130},
legend pos=north west,
ymajorgrids=true,
grid style=dashed,
]
\addplot[
color=blue,
mark=square,
]
coordinates {
(0,0)(1,1)(2,4)(3,9)(4,16)(5,25)(6,36)(7,49)(8,64)(9,81)(10,100)
};
\legend{Data 1}
\end{axis}
\end{tikzpicture}
Será renderizado assim:
Quero mostrar uma tendência de baixa, então acho que é essencial que o eixo X seja invertido, mas não sei como. Este é o gráfico que idealmente tento alcançar:
Responder1
Responder2
Porque você não forneceu a classe de documento usada. Eu uso standalone
como exemplo. Isso parece estranho, quero saber a aplicação real. No entanto, esta é a maneira de fazer isso.
Existe uma maneira mais fácil, usando a opção
x dir=reverse
:
\documentclass[border=0.618cm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
title={My Chart},
xlabel={X axis},
ylabel={Y axis},
ymin=0.5, ymax=2,
xmin=0, xmax=140,
legend pos=north east,
ymajorgrids=true,
grid style=dashed,
x dir=reverse
]
\addplot[
color=blue,
mark=square,
] coordinates {
(130,1.8)(65,1.5)(45,1.2)(22,1.1)(14,0.9)(10,0.8)
};
\legend{Data 1}
\end{axis}
\end{tikzpicture}
\end{document}