Farben der Parzellen vertauschen

Farben der Parzellen vertauschen

Ich möchte in meiner Abbildung zwei Plotfarben vertauschen. Bitte schauen Sie sich das an:

Bildbeschreibung hier eingeben

Wie Sie sehen, fehlt in der zweiten Abbildung die Grafik „Kurzfrist“ . Um Verwirrungen beim Betrachten der beiden Abbildungen zu vermeiden, möchte ich daher die Farbe der „Kurzfrist“ in Abbildung 1 in Braun und die der „Langfrist“ in Rot ändern. Dies ist mein Code:

\documentclass[12pt]{article}
\usepackage[left=3cm,top=3.5cm,right=2.5cm,bottom=2.5cm]{geometry}
\usepackage[english]{babel}
\usepackage{tikz}
\usepackage{pgfplots}
\usepackage{filecontents}
\usepackage[margin=1cm]{caption}
\captionsetup[figure]{skip=18pt}

\begin{filecontents}{\jobname Data1.csv} 
Price;OneSided;ShortRun;LongRun
5;8.7;4;20.3 
10;16;11.7;20.7 
15;22.2;18.2;21 
20;27.6;23.9;21.3 
30;36.3;33.1;21.7
40;43.2;40.3;22.1
50;48.8;46.2;22.4
60;53.3;50.9;22.6
70;57.1;54.9;22.8
80;60.4;58.3;23
90;63.1;61.3;23.1
100;65.6;63.8;23.3
\end{filecontents}

\begin{filecontents}{\jobname Data3.csv} 
Price;OneSided;LongRun
5;8.7;14.9 
10;16;17.5 
15;22.2;20.1 
20;27.6;22.7 
30;36.3;28
40;43.2;33.2
50;48.8;38.4
60;53.3;43.7
70;57.1;48.9
80;60.4;54.1
90;63.1;59.3
100;65.6;64.6
\end{filecontents}

\begin{document}
\begin{figure}
\caption[Comparison of critical diversion ratios over different prices]
{Comparison of critical diversion ratios over different prices.}
\label{PlotSymmetrischDR}
\centering
\begin{tikzpicture} 
\begin{axis}[style={auto},legend pos=north west,ymin=0, 
%        xtick={5,10,15,20,25,30,40,50,60,70,80,90,100}, 
     x tick label style={/pgf/number format/1000 sep=}, 
     xlabel={Price increase, in \%}, 
     y tick label style={/pgf/number format/1000 sep=}, 
     ylabel={Critical diversion ratio, in \%} 
     ] 
\addplot table [y=OneSided,col sep=semicolon]  {\jobname Data1.csv}; 
\addlegendentry{One-sided} 
\addplot table [y=ShortRun,col sep=semicolon]  {\jobname Data1.csv}; 
\addlegendentry{Short-run} 
\addplot table [y=LongRun,col sep=semicolon]  {\jobname Data1.csv}; 
\addlegendentry{Long-run}
\end{axis} 
\end{tikzpicture}
\end{figure}

\begin{figure}
\caption[Comparison of critical diversion ratios over different prices]
 {Comparison of critical diversion ratios over different prices.}
\label{PlotASymmetrischDR}
\centering
\begin{tikzpicture} 
\begin{axis}[style={auto},legend pos=north west,ymin=0, 
%        xtick={5,10,15,20,25,30,40,50,60,70,80,90,100}, 
     x tick label style={/pgf/number format/1000 sep=}, 
     xlabel={Price increase, in \%}, 
     y tick label style={/pgf/number format/1000 sep=}, 
     ylabel={Critical diversion ratio, in \%} 
     ] 
\addplot table [y=OneSided,col sep=semicolon]  {\jobname Data3.csv}; 
\addlegendentry{One-sided} 
\addplot table [y=LongRun,col sep=semicolon]  {\jobname Data3.csv}; 
\addlegendentry{Long-run}
\end{axis} 
\end{tikzpicture}
\end{figure}
\end{document} 

Ich habe versucht, redoder brownin einzufügen \addplot table [y=ShortRun,col sep=semicolon], wie vorgeschlagenHier, aber es ändert nichts. Kann mir bitte jemand helfen, herauszufinden, was ich falsch mache?

Ist es außerdem möglich, diese Figuren nebeneinander zu haben? Ich habe versucht, die Größe der gesamten Figur zu ändern, damit sie nebeneinander passen, aber das sieht nicht sehr gut aus. Vielleicht gibt es andere Lösungen, die ich ausprobieren könnte?

Danke für die Hilfe!

Antwort1

Lösung 1: Tauschen Sie einfach die Reihenfolge der Diagramme in der ersten Abbildung aus.

\documentclass[12pt]{article}
\usepackage[left=3cm,top=3.5cm,right=2.5cm,bottom=2.5cm]{geometry}
\usepackage[english]{babel}
\usepackage{tikz}
\usepackage{pgfplots}
\usepackage{filecontents}
\usepackage[margin=1cm]{caption}
\captionsetup[figure]{skip=18pt}

\begin{filecontents}{\jobname Data1.csv} 
Price;OneSided;ShortRun;LongRun
5;8.7;4;20.3 
10;16;11.7;20.7 
15;22.2;18.2;21 
20;27.6;23.9;21.3 
30;36.3;33.1;21.7
40;43.2;40.3;22.1
50;48.8;46.2;22.4
60;53.3;50.9;22.6
70;57.1;54.9;22.8
80;60.4;58.3;23
90;63.1;61.3;23.1
100;65.6;63.8;23.3
\end{filecontents}

\begin{filecontents}{\jobname Data3.csv} 
Price;OneSided;LongRun
5;8.7;14.9 
10;16;17.5 
15;22.2;20.1 
20;27.6;22.7 
30;36.3;28
40;43.2;33.2
50;48.8;38.4
60;53.3;43.7
70;57.1;48.9
80;60.4;54.1
90;63.1;59.3
100;65.6;64.6
\end{filecontents}

\begin{document}
\begin{figure}
\caption[Comparison of critical diversion ratios over different prices]
{Comparison of critical diversion ratios over different prices.}
\label{PlotSymmetrischDR}
\centering
\begin{tikzpicture} 
\begin{axis}[style={auto},legend pos=north west,ymin=0, 
%        xtick={5,10,15,20,25,30,40,50,60,70,80,90,100}, 
     x tick label style={/pgf/number format/1000 sep=}, 
     xlabel={Price increase, in \%}, 
     y tick label style={/pgf/number format/1000 sep=}, 
     ylabel={Critical diversion ratio, in \%} 
     ] 
\addplot table [y=OneSided,col sep=semicolon]  {\jobname Data1.csv}; 
\addlegendentry{One-sided} 
\addplot table [y=LongRun,col sep=semicolon]  {\jobname Data1.csv}; 
\addlegendentry{Long-run}
\addplot table [y=ShortRun,col sep=semicolon]  {\jobname Data1.csv}; 
\addlegendentry{Short-run} 
\end{axis} 
\end{tikzpicture}
\end{figure}

\begin{figure}
\caption[Comparison of critical diversion ratios over different prices]
 {Comparison of critical diversion ratios over different prices.}
\label{PlotASymmetrischDR}
\centering
\begin{tikzpicture} 
\begin{axis}[style={auto},legend pos=north west,ymin=0, 
%        xtick={5,10,15,20,25,30,40,50,60,70,80,90,100}, 
     x tick label style={/pgf/number format/1000 sep=}, 
     xlabel={Price increase, in \%}, 
     y tick label style={/pgf/number format/1000 sep=}, 
     ylabel={Critical diversion ratio, in \%} 
     ] 
\addplot table [y=OneSided,col sep=semicolon]  {\jobname Data3.csv}; 
\addlegendentry{One-sided} 
\addplot table [y=LongRun,col sep=semicolon]  {\jobname Data3.csv}; 
\addlegendentry{Long-run}
\end{axis} 
\end{tikzpicture}
\end{figure}
\end{document}

Lösung 2: Ändern Sie die Plotfarbe in Abbildung 2 manuell:

\documentclass[12pt]{article}
\usepackage[left=3cm,top=3.5cm,right=2.5cm,bottom=2.5cm]{geometry}
\usepackage[english]{babel}
\usepackage{tikz}
\usepackage{pgfplots}
\usepackage{filecontents}
\usepackage[margin=1cm]{caption}
\captionsetup[figure]{skip=18pt}

\begin{filecontents}{\jobname Data1.csv} 
Price;OneSided;ShortRun;LongRun
5;8.7;4;20.3 
10;16;11.7;20.7 
15;22.2;18.2;21 
20;27.6;23.9;21.3 
30;36.3;33.1;21.7
40;43.2;40.3;22.1
50;48.8;46.2;22.4
60;53.3;50.9;22.6
70;57.1;54.9;22.8
80;60.4;58.3;23
90;63.1;61.3;23.1
100;65.6;63.8;23.3
\end{filecontents}

\begin{filecontents}{\jobname Data3.csv} 
Price;OneSided;LongRun
5;8.7;14.9 
10;16;17.5 
15;22.2;20.1 
20;27.6;22.7 
30;36.3;28
40;43.2;33.2
50;48.8;38.4
60;53.3;43.7
70;57.1;48.9
80;60.4;54.1
90;63.1;59.3
100;65.6;64.6
\end{filecontents}

\begin{document}
\begin{figure}
\caption[Comparison of critical diversion ratios over different prices]
{Comparison of critical diversion ratios over different prices.}
\label{PlotSymmetrischDR}
\centering
\begin{tikzpicture} 
\begin{axis}[style={auto},legend pos=north west,ymin=0, 
%        xtick={5,10,15,20,25,30,40,50,60,70,80,90,100}, 
     x tick label style={/pgf/number format/1000 sep=}, 
     xlabel={Price increase, in \%}, 
     y tick label style={/pgf/number format/1000 sep=}, 
     ylabel={Critical diversion ratio, in \%} 
     ] 
\addplot table [y=OneSided,col sep=semicolon]  {\jobname Data1.csv}; 
\addlegendentry{One-sided}
\addplot table [y=ShortRun,col sep=semicolon]  {\jobname Data1.csv}; 
\addlegendentry{Short-run}  
\addplot table [y=LongRun,col sep=semicolon]  {\jobname Data1.csv}; 
\addlegendentry{Long-run}
\end{axis} 
\end{tikzpicture}
\end{figure}

\begin{figure}
\caption[Comparison of critical diversion ratios over different prices]
 {Comparison of critical diversion ratios over different prices.}
\label{PlotASymmetrischDR}
\centering
\begin{tikzpicture} 
\begin{axis}[style={auto},legend pos=north west,ymin=0, 
%        xtick={5,10,15,20,25,30,40,50,60,70,80,90,100}, 
     x tick label style={/pgf/number format/1000 sep=}, 
     xlabel={Price increase, in \%}, 
     y tick label style={/pgf/number format/1000 sep=}, 
     ylabel={Critical diversion ratio, in \%} 
     ] 
\addplot table [y=OneSided,col sep=semicolon]  {\jobname Data3.csv}; 
\addlegendentry{One-sided} 
\addplot+[brown,mark=*,every mark/.append style={solid, fill=brown}] table [y=LongRun,col sep=semicolon]  {\jobname Data3.csv}; 
\addlegendentry{Long-run}
\end{axis} 
\end{tikzpicture}
\end{figure}
\end{document}

\addplot[]Beachten Sie, dass die Formatierung in und nicht in erfolgt ... table [], wobei +„Anhängen“ anzeigt.


Lösung 3: In Abbildung 2 springen Sie einen Schritt vorwärtsZyklusliste\pgfplotsset{cycle list shift=1}(die Reihenfolge der Stile, die auf jedes nachfolgende Diagramm angewendet wird). Dies kann wie folgt erfolgen .

\documentclass[12pt]{article}
\usepackage[left=3cm,top=3.5cm,right=2.5cm,bottom=2.5cm]{geometry}
\usepackage[english]{babel}
\usepackage{tikz}
\usepackage{pgfplots}
\usepackage{filecontents}
\usepackage[margin=1cm]{caption}
\captionsetup[figure]{skip=18pt}

\begin{filecontents}{\jobname Data1.csv} 
    Price;OneSided;ShortRun;LongRun
    5;8.7;4;20.3 
    10;16;11.7;20.7 
    15;22.2;18.2;21 
    20;27.6;23.9;21.3 
    30;36.3;33.1;21.7
    40;43.2;40.3;22.1
    50;48.8;46.2;22.4
    60;53.3;50.9;22.6
    70;57.1;54.9;22.8
    80;60.4;58.3;23
    90;63.1;61.3;23.1
    100;65.6;63.8;23.3
\end{filecontents}

\begin{filecontents}{\jobname Data3.csv} 
    Price;OneSided;LongRun
    5;8.7;14.9 
    10;16;17.5 
    15;22.2;20.1 
    20;27.6;22.7 
    30;36.3;28
    40;43.2;33.2
    50;48.8;38.4
    60;53.3;43.7
    70;57.1;48.9
    80;60.4;54.1
    90;63.1;59.3
    100;65.6;64.6
\end{filecontents}

\begin{document}
    \begin{figure}
        \caption[Comparison of critical diversion ratios over different prices]
        {Comparison of critical diversion ratios over different prices.}
        \label{PlotSymmetrischDR}
        \centering
        \begin{tikzpicture} 
        \begin{axis}[style={auto},legend pos=north west,ymin=0, 
        %        xtick={5,10,15,20,25,30,40,50,60,70,80,90,100}, 
        x tick label style={/pgf/number format/1000 sep=}, 
        xlabel={Price increase, in \%}, 
        y tick label style={/pgf/number format/1000 sep=}, 
        ylabel={Critical diversion ratio, in \%} 
        ] 
        \addplot table [y=OneSided,col sep=semicolon]  {\jobname Data1.csv}; 
        \addlegendentry{One-sided} 
        \addplot table [y=ShortRun,col sep=semicolon]  {\jobname Data1.csv}; 
        \addlegendentry{Short-run} 
        \addplot table [y=LongRun,col sep=semicolon]  {\jobname Data1.csv}; 
        \addlegendentry{Long-run}
        \end{axis} 
        \end{tikzpicture}
    \end{figure}

    \begin{figure}
        \caption[Comparison of critical diversion ratios over different prices]
        {Comparison of critical diversion ratios over different prices.}
        \label{PlotASymmetrischDR}
        \centering
        \begin{tikzpicture} 
        \begin{axis}[style={auto},legend pos=north west,ymin=0, 
        %        xtick={5,10,15,20,25,30,40,50,60,70,80,90,100}, 
        x tick label style={/pgf/number format/1000 sep=}, 
        xlabel={Price increase, in \%}, 
        y tick label style={/pgf/number format/1000 sep=}, 
        ylabel={Critical diversion ratio, in \%} 
        ] 
        \addplot table [y=OneSided,col sep=semicolon]  {\jobname Data3.csv}; 
        \addlegendentry{One-sided} 
        \pgfplotsset{cycle list shift=1}
        \addplot table [y=LongRun,col sep=semicolon]  {\jobname Data3.csv}; 
        \addlegendentry{Long-run}
        \end{axis} 
        \end{tikzpicture}
    \end{figure}
\end{document} 

Ist es außerdem möglich, diese Figuren nebeneinander zu haben? Ich habe versucht, die Größe der gesamten Figur zu ändern, damit sie nebeneinander passen, aber das sieht nicht sehr gut aus. Vielleicht gibt es andere Lösungen, die ich ausprobieren könnte?

Haben Sie diese Frage gesehen:Zwei Figuren nebeneinander?

Auch in Bezug auf die Skalierung Ihrer Grundstücke,Es gibt verschiedene Möglichkeiten.

Die folgende Lösung verwendet Miniseiten für nebeneinander angeordnete Abbildungen und Resizebox, um die Diagramme entsprechend zu skalieren:

\documentclass[12pt]{article}
\usepackage[left=3cm,top=3.5cm,right=2.5cm,bottom=2.5cm]{geometry}
\usepackage[english]{babel}
\usepackage{tikz}
\usepackage{pgfplots}
\usepackage{filecontents}
\usepackage[margin=1cm]{caption}
\captionsetup[figure]{skip=18pt}

\begin{filecontents}{\jobname Data1.csv} 
Price;OneSided;ShortRun;LongRun
5;8.7;4;20.3 
10;16;11.7;20.7 
15;22.2;18.2;21 
20;27.6;23.9;21.3 
30;36.3;33.1;21.7
40;43.2;40.3;22.1
50;48.8;46.2;22.4
60;53.3;50.9;22.6
70;57.1;54.9;22.8
80;60.4;58.3;23
90;63.1;61.3;23.1
100;65.6;63.8;23.3
\end{filecontents}

\begin{filecontents}{\jobname Data3.csv} 
Price;OneSided;LongRun
5;8.7;14.9 
10;16;17.5 
15;22.2;20.1 
20;27.6;22.7 
30;36.3;28
40;43.2;33.2
50;48.8;38.4
60;53.3;43.7
70;57.1;48.9
80;60.4;54.1
90;63.1;59.3
100;65.6;64.6
\end{filecontents}

\begin{document}
\begin{figure}
\centering
\begin{minipage}{0.49\textwidth}
\caption[Comparison of critical diversion ratios over different prices]
{Comparison of critical diversion ratios over different prices.}
\label{PlotSymmetrischDR}
\centering
\resizebox{\textwidth}{!}{
\begin{tikzpicture} 
\begin{axis}[style={auto},legend pos=north west,ymin=0, 
%        xtick={5,10,15,20,25,30,40,50,60,70,80,90,100}, 
     x tick label style={/pgf/number format/1000 sep=}, 
     xlabel={Price increase, in \%}, 
     y tick label style={/pgf/number format/1000 sep=}, 
     ylabel={Critical diversion ratio, in \%} 
     ] 
\addplot table [y=OneSided,col sep=semicolon]  {\jobname Data1.csv}; 
\addlegendentry{One-sided}
\addplot table [y=ShortRun,col sep=semicolon]  {\jobname Data1.csv}; 
\addlegendentry{Short-run}  
\addplot table [y=LongRun,col sep=semicolon]  {\jobname Data1.csv}; 
\addlegendentry{Long-run}
\end{axis} 
\end{tikzpicture}
}
\end{minipage}
\hfill
\begin{minipage}{0.49\textwidth}
\caption[Comparison of critical diversion ratios over different prices]
 {Comparison of critical diversion ratios over different prices.}
\label{PlotASymmetrischDR}
\centering
\resizebox{\textwidth}{!}{
\begin{tikzpicture} 
\begin{axis}[style={auto},legend pos=north west,ymin=0, 
%        xtick={5,10,15,20,25,30,40,50,60,70,80,90,100}, 
     x tick label style={/pgf/number format/1000 sep=}, 
     xlabel={Price increase, in \%}, 
     y tick label style={/pgf/number format/1000 sep=}, 
     ylabel={Critical diversion ratio, in \%} 
     ] 
\addplot table [y=OneSided,col sep=semicolon]  {\jobname Data3.csv}; 
\addlegendentry{One-sided} 
\addplot+[brown,mark=*,every mark/.append style={solid, fill=brown}] table [y=LongRun,col sep=semicolon]  {\jobname Data3.csv}; 
\addlegendentry{Long-run}
\end{axis} 
\end{tikzpicture}
}
\end{minipage}
\end{figure}
\end{document}

verwandte Informationen