how to make a graph with two lines and four symbols?












-2














I want to make a graph with two lines (one for a level and anorther for other level of the factor), but each level have two categories on ggplot2. So I need make a graph like this (image) but with two symbols for each line. Help, please!!!!



enter image description here



enter link description here










share|improve this question




















  • 1




    Please share some data with dput() and the code you tried.
    – markus
    Nov 22 at 19:28










  • I tried putting the data and ended up going as image. And the graph is an example of the internet.
    – Bruna Carvalho
    Nov 22 at 21:08










  • Please consider How to make a great R reproducible example.
    – markus
    Nov 22 at 21:13










  • I put a online table with the data.
    – Bruna Carvalho
    Nov 22 at 21:37
















-2














I want to make a graph with two lines (one for a level and anorther for other level of the factor), but each level have two categories on ggplot2. So I need make a graph like this (image) but with two symbols for each line. Help, please!!!!



enter image description here



enter link description here










share|improve this question




















  • 1




    Please share some data with dput() and the code you tried.
    – markus
    Nov 22 at 19:28










  • I tried putting the data and ended up going as image. And the graph is an example of the internet.
    – Bruna Carvalho
    Nov 22 at 21:08










  • Please consider How to make a great R reproducible example.
    – markus
    Nov 22 at 21:13










  • I put a online table with the data.
    – Bruna Carvalho
    Nov 22 at 21:37














-2












-2








-2







I want to make a graph with two lines (one for a level and anorther for other level of the factor), but each level have two categories on ggplot2. So I need make a graph like this (image) but with two symbols for each line. Help, please!!!!



enter image description here



enter link description here










share|improve this question















I want to make a graph with two lines (one for a level and anorther for other level of the factor), but each level have two categories on ggplot2. So I need make a graph like this (image) but with two symbols for each line. Help, please!!!!



enter image description here



enter link description here







r ggplot2






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 22 at 21:36

























asked Nov 22 at 19:05









Bruna Carvalho

15




15








  • 1




    Please share some data with dput() and the code you tried.
    – markus
    Nov 22 at 19:28










  • I tried putting the data and ended up going as image. And the graph is an example of the internet.
    – Bruna Carvalho
    Nov 22 at 21:08










  • Please consider How to make a great R reproducible example.
    – markus
    Nov 22 at 21:13










  • I put a online table with the data.
    – Bruna Carvalho
    Nov 22 at 21:37














  • 1




    Please share some data with dput() and the code you tried.
    – markus
    Nov 22 at 19:28










  • I tried putting the data and ended up going as image. And the graph is an example of the internet.
    – Bruna Carvalho
    Nov 22 at 21:08










  • Please consider How to make a great R reproducible example.
    – markus
    Nov 22 at 21:13










  • I put a online table with the data.
    – Bruna Carvalho
    Nov 22 at 21:37








1




1




Please share some data with dput() and the code you tried.
– markus
Nov 22 at 19:28




Please share some data with dput() and the code you tried.
– markus
Nov 22 at 19:28












I tried putting the data and ended up going as image. And the graph is an example of the internet.
– Bruna Carvalho
Nov 22 at 21:08




I tried putting the data and ended up going as image. And the graph is an example of the internet.
– Bruna Carvalho
Nov 22 at 21:08












Please consider How to make a great R reproducible example.
– markus
Nov 22 at 21:13




Please consider How to make a great R reproducible example.
– markus
Nov 22 at 21:13












I put a online table with the data.
– Bruna Carvalho
Nov 22 at 21:37




I put a online table with the data.
– Bruna Carvalho
Nov 22 at 21:37












1 Answer
1






active

oldest

votes


















0














A (potential) solution in R base is this:



Define your data in a dataframe:



df <- data.frame(Gender = c(rep("m",10), rep("f", 10)),
Age = sample(10:90, 20, replace = T),
Fitness_level = sample(1:10, 20, replace = T))


Add two distinct point characters depending on age level:



df$pch <- ifelse(df$Age > 40, 8, 12) # 8 and 12 are point characters


Plot fitness level against age for men and, respectively for women, adding for each a regression line:



# scatter plot:
plot(df$Fitness_level[df$Gender=="m"] ~ df$Age[df$Gender=="m"], pch = df$pch, col="red", ylim=c(1,10))

# regression line for men:
abline(lm(df$Fitness_level[df$Gender=="m"] ~ df$Age[df$Gender=="m"]), col="red")

# add points for women:
points(df$Fitness_level[df$Gender=="f"] ~ df$Age[df$Gender=="f"], pch = df$pch, col = "blue")

# add regression line:
abline(lm(df$Fitness_level[df$Gender=="f"] ~ df$Age[df$Gender=="f"]), col="blue")


enter image description here






share|improve this answer





















    Your Answer






    StackExchange.ifUsing("editor", function () {
    StackExchange.using("externalEditor", function () {
    StackExchange.using("snippets", function () {
    StackExchange.snippets.init();
    });
    });
    }, "code-snippets");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "1"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53436850%2fhow-to-make-a-graph-with-two-lines-and-four-symbols%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    0














    A (potential) solution in R base is this:



    Define your data in a dataframe:



    df <- data.frame(Gender = c(rep("m",10), rep("f", 10)),
    Age = sample(10:90, 20, replace = T),
    Fitness_level = sample(1:10, 20, replace = T))


    Add two distinct point characters depending on age level:



    df$pch <- ifelse(df$Age > 40, 8, 12) # 8 and 12 are point characters


    Plot fitness level against age for men and, respectively for women, adding for each a regression line:



    # scatter plot:
    plot(df$Fitness_level[df$Gender=="m"] ~ df$Age[df$Gender=="m"], pch = df$pch, col="red", ylim=c(1,10))

    # regression line for men:
    abline(lm(df$Fitness_level[df$Gender=="m"] ~ df$Age[df$Gender=="m"]), col="red")

    # add points for women:
    points(df$Fitness_level[df$Gender=="f"] ~ df$Age[df$Gender=="f"], pch = df$pch, col = "blue")

    # add regression line:
    abline(lm(df$Fitness_level[df$Gender=="f"] ~ df$Age[df$Gender=="f"]), col="blue")


    enter image description here






    share|improve this answer


























      0














      A (potential) solution in R base is this:



      Define your data in a dataframe:



      df <- data.frame(Gender = c(rep("m",10), rep("f", 10)),
      Age = sample(10:90, 20, replace = T),
      Fitness_level = sample(1:10, 20, replace = T))


      Add two distinct point characters depending on age level:



      df$pch <- ifelse(df$Age > 40, 8, 12) # 8 and 12 are point characters


      Plot fitness level against age for men and, respectively for women, adding for each a regression line:



      # scatter plot:
      plot(df$Fitness_level[df$Gender=="m"] ~ df$Age[df$Gender=="m"], pch = df$pch, col="red", ylim=c(1,10))

      # regression line for men:
      abline(lm(df$Fitness_level[df$Gender=="m"] ~ df$Age[df$Gender=="m"]), col="red")

      # add points for women:
      points(df$Fitness_level[df$Gender=="f"] ~ df$Age[df$Gender=="f"], pch = df$pch, col = "blue")

      # add regression line:
      abline(lm(df$Fitness_level[df$Gender=="f"] ~ df$Age[df$Gender=="f"]), col="blue")


      enter image description here






      share|improve this answer
























        0












        0








        0






        A (potential) solution in R base is this:



        Define your data in a dataframe:



        df <- data.frame(Gender = c(rep("m",10), rep("f", 10)),
        Age = sample(10:90, 20, replace = T),
        Fitness_level = sample(1:10, 20, replace = T))


        Add two distinct point characters depending on age level:



        df$pch <- ifelse(df$Age > 40, 8, 12) # 8 and 12 are point characters


        Plot fitness level against age for men and, respectively for women, adding for each a regression line:



        # scatter plot:
        plot(df$Fitness_level[df$Gender=="m"] ~ df$Age[df$Gender=="m"], pch = df$pch, col="red", ylim=c(1,10))

        # regression line for men:
        abline(lm(df$Fitness_level[df$Gender=="m"] ~ df$Age[df$Gender=="m"]), col="red")

        # add points for women:
        points(df$Fitness_level[df$Gender=="f"] ~ df$Age[df$Gender=="f"], pch = df$pch, col = "blue")

        # add regression line:
        abline(lm(df$Fitness_level[df$Gender=="f"] ~ df$Age[df$Gender=="f"]), col="blue")


        enter image description here






        share|improve this answer












        A (potential) solution in R base is this:



        Define your data in a dataframe:



        df <- data.frame(Gender = c(rep("m",10), rep("f", 10)),
        Age = sample(10:90, 20, replace = T),
        Fitness_level = sample(1:10, 20, replace = T))


        Add two distinct point characters depending on age level:



        df$pch <- ifelse(df$Age > 40, 8, 12) # 8 and 12 are point characters


        Plot fitness level against age for men and, respectively for women, adding for each a regression line:



        # scatter plot:
        plot(df$Fitness_level[df$Gender=="m"] ~ df$Age[df$Gender=="m"], pch = df$pch, col="red", ylim=c(1,10))

        # regression line for men:
        abline(lm(df$Fitness_level[df$Gender=="m"] ~ df$Age[df$Gender=="m"]), col="red")

        # add points for women:
        points(df$Fitness_level[df$Gender=="f"] ~ df$Age[df$Gender=="f"], pch = df$pch, col = "blue")

        # add regression line:
        abline(lm(df$Fitness_level[df$Gender=="f"] ~ df$Age[df$Gender=="f"]), col="blue")


        enter image description here







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 22 at 22:30









        Chris Ruehlemann

        37829




        37829






























            draft saved

            draft discarded




















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.





            Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


            Please pay close attention to the following guidance:


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53436850%2fhow-to-make-a-graph-with-two-lines-and-four-symbols%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            A CLEAN and SIMPLE way to add appendices to Table of Contents and bookmarks

            Calculate evaluation metrics using cross_val_predict sklearn

            Insert data from modal to MySQL (multiple modal on website)