带有数据标签的复杂条形图

带有数据标签的复杂条形图

我想创建一个类似于我在网上找到的图表1。我不知道使用 tikZ 和 pgfplots 等简单工具是否可行,或者是否建议放弃这个想法并恢复到其他处理器或更简单的表格。我想从这个例子中保留的元素是:

  • 侧面的标签与相关值;
  • 将两个堆栈并排放置,以便它们各自的高度显示“生产”和“消费”之间的正确差异。

我继续添加了一个带有基本条形图的简单测试代码,我怀疑如果要使用 pgfplots,这可能是这个过程的(非常)第一步。

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{siunitx}    
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}

\begin{document}

\begin{tikzpicture}
  \begin{axis}[ybar stacked,%
    ymin=0,%
    ymax=10]
    \addplot coordinates{(1,4.6)};
    \addplot coordinates{(1,2.0)};
    \addplot coordinates{(1,1.6)};
    \addplot coordinates{(2,7.5)};
    \addplot coordinates{(2,0.7)};
  \end{axis}
\end{tikzpicture}

\end{document}

预期成果示例(来自 Hydrogène énergie)

答案1

以下答案使用轮图包,是我写的。

条形是通过键获得的ybar

百分比由 给出\WCperc

线条的长度、定位和样式由lineslines sep和键决定lines poslines style

在右侧的条形图中,一些文本通过 键垂直移动data angle shift

在此处输入图片描述

\documentclass[border=6pt,dvipsnames]{standalone}
\usepackage{wheelchart}
\usetikzlibrary{arrows.meta}
\begin{document}
\begin{tikzpicture}[gray]
\sffamily
\pgfkeys{
  /wheelchart,
  data=\WCvarC{} (\WCperc),
  data sep=0,
  lines=0.5,
  lines sep=0,
  lines style=gray!50,
  ybar={2.5}{7}
}
\wheelchart[
  data pos=0,
  data style=left,
  lines pos=0
]{%
  49/Orange/Vaporeformage du méthane,
  29/teal!10/Oxydation partielle de\\coupes pétrolières,
  18/teal!40/Gazéification de charbon,
  4/teal!70/\'Electrolyse%
}
\node[above] at (1.25,7) {PRODUCTION};
\wheelchart[
  at={(5,0)},
  data angle shift=\WCvarD
]{%
  46/Violet!90/Récupération de pétrole et raffinage/0,
  44/Violet!80/Production d'ammoniac/0,
  4/Violet!70/Production de méthanol/-0.5,
  2/Violet!60/Production et fabrication de métaux/-0.3,
  1/Violet!50/\'Electronique/0,
  1/Violet!40/Industrie alimentaire/0.3,
  1/Violet!30/Autres/0.5%
}
\node[above] at (6.25,7) {CONSOMMATION};
\node[align=center] at (3.75,3.5) {{\huge 50} Mt\\d'hydrogène\\par an\\dans le monde};
\draw[->,>=Triangle] (3.75,4.7)--+(0,2.3);
\draw[->,>=Triangle] (3.75,2.3)--+(0,-2.3);
\node at (0.5,8.5) {\Large\textbf{Hydrogène} Production et consommation dans le monde};
\node at (-3.5,0) {\footnotesize Source: Institution of Mechanical Engineers};
\end{tikzpicture}
\end{document}

相关内容