- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
How to display legend on top using ggplot2 in R?
To display legend on top using ggplot2 in R, we can use theme function with legend.justification argument to top.
For Example, if we have a data frame called df that contains three columns say X and Y and F where X and Y are numerical and F is categorical then we can create scatterplot between X and Y with point colored by values in F by using the command given below −
ggplot(df,aes(X,Y))+geom_point(aes(colour=factor(F)))+theme(legend.justification="top")
Example
Following snippet creates a sample data frame −
x<-rnorm(20) y<-rnorm(20) Grp<-sample(LETTERS[1:3],20,replace=TRUE) df<-data.frame(x,y,Grp) df
The following dataframe is created
x y Grp 1 -1.066129589 0.828709138 C 2 -1.222825364 -0.306424935 C 3 0.429354500 -1.446665340 B 4 -0.609955977 -0.288351976 A 5 1.200129675 0.716336213 C 6 0.800850596 -1.095220235 C 7 0.517368694 1.561305370 C 8 -0.006456066 -0.002988512 B 9 0.555280469 -1.241763197 C 10 -2.043538292 -1.734706075 C 11 -1.151771052 -0.878394321 B 12 0.845068460 -1.139618835 C 13 2.071684310 0.825474682 B 14 -0.250229200 -0.120597321 B 15 -1.280790787 -0.461785183 A 16 -0.028062183 -0.154095381 B 17 -0.620917924 0.398107075 A 18 0.302128850 0.497374731 C 19 0.719935519 -1.230463223 A 20 -0.862276767 0.518153886 A
To load ggplot2 package and create scatterplot between x and y colored based on Grp values on the above created data frame, add the following code to the above snippet −
x<-rnorm(20) y<-rnorm(20) Grp<-sample(LETTERS[1:3],20,replace=TRUE) df<-data.frame(x,y,Grp) library(ggplot2) ggplot(df,aes(x,y))+geom_point(aes(colour=factor(Grp)))
Output
If you execute all the above given snippets as a single program, it generates the following Output −
To create scatterplot between x and y colored based on Grp values with legend on top on the above created data frame, add the following code to the above snippet −
x<-rnorm(20) y<-rnorm(20) Grp<-sample(LETTERS[1:3],20,replace=TRUE) df<-data.frame(x,y,Grp) library(ggplot2) ggplot(df,aes(x,y))+geom_point(aes(colour=factor(Grp)))+theme(legend.justification="top")
Output
If you execute all the above given snippets as a single program, it generates the following Output −
- Related Articles
- Remove grey color from legend display using ggplot2 in R.
- How to create horizontal legend using ggplot2 in R?
- How to change the legend shape using ggplot2 in R?
- How to cover legend in a box using ggplot2 in R?
- How to change legend for multiple histograms using ggplot2 in R?
- How to display the curve on the histogram using ggplot2 in R?
- How to set the legends using ggplot2 on top-right side in R?
- How to create colored barplot using ggplot2 without legend entries in R?
- How to set the position of legend of a ggplot2 graph to left-top side in R?
- How to change the legend title in ggplot2 in R?
- How to display count on Y-axis for line chart using ggplot2 in R?
- How to display two equal signs in R using ggplot2?
- How to display mean in a histogram using ggplot2 in R?
- How to change legend values in a bar plot created by using ggplot2 in R?
- How to display 0 at Y-axis using ggplot2 in R?
