plotting [risolto]

  • Creatore
    Topic
  • #110519
    davidebond
    Partecipante
      Up
      0
      Down
      ::


      Salve. First of all, il mio mwe:

      `
      \documentclass{amsart}
      \usepackage{pgfplots}
      \pgfplotsset{width=10cm, compat=1.9}
      \usepackage{tikz}

      \begin{document}

      \begin{tikzpicture}
      \begin{axis}[
      title={Titolo},
      xlabel={Label-$x$},
      ylabel={Label-$y$},
      xmin=0, xmax=7,
      ymin=0, ymax=10,
      xtick={1,2,3,4,5,6,7},
      ytick={0,1,2,3,4,5,6,7,8,9,10},
      legend pos=north west,
      ymajorgrids=true,
      grid style=dashed,
      ]

      \addplot[
      color=blue,
      mark=square,
      ]
      coordinates {
      (1,6)(2,7)(3,8)(4,6)(5,5)(6,5)(7,5)
      };
      \legend{Legend}

      \end{axis}
      \end{tikzpicture}

      \end{document}
      `

      Ecco. Io vorrei che solo uno dei punti venisse contrassegnato dal rettangolino della legend. Oppure, che uno solo dei punti venisse contrassegnato in maniera diversa. Inoltre, le coordinate y vanno bene, ma x dovrebbe andare da 1 a 7. Come combinare queste due cose?

      Grazie. Ciao,

      davide

    Visualizzazione 5 filoni di risposte
    • Autore
      Risposte
      • #110520
        Up
        0
        Down
        ::


        Tipo così?
        `\documentclass{amsart}
        \usepackage{pgfplots}
        \pgfplotsset{width=10cm, compat=1.9}
        \usepackage{tikz}

        \begin{document}

        \begin{tikzpicture}
        \begin{axis}[
        title={Titolo},
        xlabel={Label-$x$},
        ylabel={Label-$y$},
        xmin=1, xmax=7,
        ymin=0, ymax=10,
        xtick={1,2,3,4,5,6,7},
        ytick={0,1,2,3,4,5,6,7,8,9,10},
        legend pos=north west,
        ymajorgrids=true,
        grid style=dashed,
        ]

        \addplot[
        color=blue]
        coordinates {
        (1,6)(2,7)(3,8)(4,6)(5,5)(6,5)(7,5)
        };
        \addplot coordinates{(2,7)};
        \legend{,Legend}

        \end{axis}
        \end{tikzpicture}

        \end{document}`

      • #110521
        davidebond
        Partecipante
          Up
          0
          Down
          ::


          Anzizutto, grazie. Questo è un risultato. Io volevo però eliminare gli altri quadratini.

          Ciao,

          davide

        • #110522
          davidebond
          Partecipante
            Up
            0
            Down
            ::


            Così non sarebbe male:

            `

            \documentclass{amsart}
            \usepackage{pgfplots}
            \pgfplotsset{width=10cm, compat=1.9}
            \usepackage{tikz}

            \begin{document}

            \begin{tikzpicture}
            \begin{axis}[
            title={Titolo},
            xlabel={Label-$x$},
            ylabel={Label-$y$},
            xmin=0, xmax=7,
            ymin=0, ymax=10,
            xtick={1,2,3,4,5,6,7},
            ytick={0,1,2,3,4,5,6,7,8,9,10},
            legend pos=north west,
            ymajorgrids=true,
            grid style=dashed,
            ]

            \addplot[
            color=black,
            mark=*
            ]
            coordinates {
            (1,6)(3,8)(4,6)(5,5)(6,5)(7,5)
            };
            \addplot coordinates{(2,7)};
            \legend{Legend}

            \end{axis}
            \end{tikzpicture}

            \end{document}
            `

            Ho provato a cancella anche i puntini, ma forse non è il massimo. Il problema è che le coordinate y partono da 0, mentre quelle x da 1. Come fare?

            Grazie.

            Ciao,

            davide

            P.S. Forse può interessare:

            https://www.dante.de/events/Archiv/herbst2010/Programm/pinnow/pinnow-folien.pdf

          • #110523
            davidebond
            Partecipante
              Up
              0
              Down
              ::


              Allora, un problema l’ho risolto, ma cambiando coordinata la linea del plot non passa da (4,6). Come mai?

              `
              \documentclass{amsart}
              \usepackage{pgfplots}
              \pgfplotsset{width=10cm, compat=1.9}
              \usepackage{tikz}

              \begin{document}

              \begin{tikzpicture}
              \begin{axis}[
              title={Titolo},
              xlabel={Label-$x$},
              ylabel={Label-$y$},
              xmin=1, xmax=7,
              ymin=0, ymax=10,
              xtick={1,2,3,4,5,6,7},
              ytick={0,1,2,3,4,5,6,7,8,9,10},
              legend pos=north west,
              ymajorgrids=true,
              grid style=dashed,
              ]

              \addplot[
              color=black,
              mark=
              ]
              coordinates {
              (1,6)(2,7)(3,8)(5,5)(6,5)(7,5)
              };
              \addplot coordinates{(4,6)};
              \legend{Legend}

              \end{axis}
              \end{tikzpicture}

              \end{document}

              Grazie. Ciao,

              davide
              `

            • #110524
              Up
              0
              Down
              ::

              davidebond” post=110753Anzizutto, grazie. Questo è un risultato. Io volevo però eliminare gli altri quadratini.

              Ciao,
              davide

              Nell’esempio che ho fatto io c’è solo il quadrato rosso, quelli blu li ho tolti

              Ho provato a cancella anche i puntini, ma forse non è il massimo. Il problema è che le coordinate y partono da 0, mentre quelle x da 1. Come fare?

              Come fare per fare cosa? Se vuoi che anche le y partano da uno basta modificare anche la chiave ymin in maniera esattamente speculare a quanto ho fatto io sulla x

              Allora, un problema l’ho risolto, ma cambiando coordinata la linea del plot non passa da (4,6). Come mai?

              mmm….
              `
              \addplot[
              color=black,
              mark=
              ]
              coordinates {
              (1,6)(2,7)(3,8)(5,5)(6,5)(7,5)
              };
              `
              questa è la linea nera…non c’è il punto (4,6) ovvio che non ci passi.
              Non l’ho scritto in maniera eplicita perché mi sembrava banale…l’idea di base del codice che ti ho inviato consiste nel sovrapporre due curve. La prima è la linea nera che passa per i vari punti e la seconda è una linea formata da un solo punto per marchiare il punto di interesse.
              Essendo curve distinte le controlli in maniera distinta e sono totalmente indipendenti tra loro.
              Per quanto riguarda il resto non ho ben chiaro che cosa ti serve…con tutti questi messaggi mi hai confuso abbastanza le idee 😛

            • #110525
              davidebond
              Partecipante
                Up
                0
                Down
                ::


                Sì, hai ragione, per (4,6) non poteva passare. Grazie dell’idea di usare più linee. Non ci avevo pensato. Questo il risultato finale:

                `

                \documentclass{amsart}
                \usepackage{pgfplots}
                \pgfplotsset{width=10cm, compat=1.9}
                \usepackage{tikz}

                \begin{document}

                \begin{tikzpicture}
                \begin{axis}[
                title={Title},
                xlabel={xlabel},
                ylabel={ylabel},
                xmin=1, xmax=7,
                ymin=0, ymax=10,
                xtick={1,2,3,4,5,6,7},
                ytick={0,1,2,3,4,5,6,7,8,9,10},
                legend pos=north west,
                ymajorgrids=true,
                grid style=dashed,
                ]

                \addplot[
                color=black,
                mark=*,
                ]
                coordinates {
                (1,6)(2,7)(3,8)
                };
                \legend{Legend}

                \addplot [
                color=blue,
                mark=square,
                ]
                coordinates {
                (4,6)
                };

                \addplot [
                color=black,
                mark=,
                ]
                coordinates {
                (3,8)(4,6)(5,5)
                };

                \addplot [
                color=black,
                mark=*,
                ]
                coordinates {
                (5,5)(6,0)(7,0)
                };

                \end{axis}
                \end{tikzpicture}

                \end{document}

                `

                Grazie. Ciao,

                davide

            Visualizzazione 5 filoni di risposte
            • Devi essere connesso per rispondere a questo topic.

            Go to top