How to add geom_line to a grouped barplot [duplicate]

Multi tool use
Multi tool use











up vote
-1
down vote

favorite













This question already has an answer here:




  • ggplot2 line chart gives “geom_path: Each group consist of only one observation. Do you need to adjust the group aesthetic?”

    3 answers



  • How can a line be overlaid on a bar plot using ggplot2?

    2 answers




I am trying to create a grouped bar chart with a line over it. The geom_bar and geom_line seem to work together when it is a single barchart however not when it is a grouped one. This is my code below which shows the barchart perfectly however does not show the line. The error message I am getting is: "geom_path: Each group consists of only one observation. Do you need to adjust the group aesthetic?"
Below is my code, does anyone know how to fix this?



  cbPalette <- c("grey20", "grey","black")
x <- read.csv("cuss_usage2.csv", header=TRUE, sep=",")
z <- read.csv("cuss_usage3.csv", header=TRUE, sep=",")

y <- data.frame (x)
a <-data.frame(z)


bar <- ggplot (group, aes(x=day, y=value)) +

geom_bar(aes(x=day, y=value,fill=variable),stat="identity",
position="dodge") +

geom_line(data=a, aes(x=day,y=percentage),color="black") +

scale_x_discrete(limits=c("Mon", "Tue", "Wed", "Thu", "Fri", "Sat",
"Sun")) +

scale_y_discrete(limits=c(0,2,4,6,8,10)) +

scale_fill_manual(values=cbPalette) + theme(legend.position="bottom")
+labs(fill="")+ylab("Journey Time (min)")+xlab("")



grid.arrange(bar)


Below is my csv data for bar plot:



day,pax,count
Mon,4,9
Tue,5,8
Wed,7,7
Thu,9,3
Fri,4,6
Sat,3,9
Sun,2,7


Below is my csv data for line:
day,percentage



Mon,5
Tue,5
Wed,3
Thu,5
Fri,2
Sat,4
Sun,3









share|improve this question















marked as duplicate by Jaap r
Users with the  r badge can single-handedly close r questions as duplicates and reopen them as needed.

StackExchange.ready(function() {
if (StackExchange.options.isMobile) return;

$('.dupe-hammer-message-hover:not(.hover-bound)').each(function() {
var $hover = $(this).addClass('hover-bound'),
$msg = $hover.siblings('.dupe-hammer-message');

$hover.hover(
function() {
$hover.showInfoMessage('', {
messageElement: $msg.clone().show(),
transient: false,
position: { my: 'bottom left', at: 'top center', offsetTop: -7 },
dismissable: false,
relativeToBody: true
});
},
function() {
StackExchange.helpers.removeMessages();
}
);
});
});
Nov 21 at 16:07


This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.















  • Your code doesn't match your variable names, please revise. There are no group, value, and variable.
    – Anonymous coward
    Nov 21 at 15:48















up vote
-1
down vote

favorite













This question already has an answer here:




  • ggplot2 line chart gives “geom_path: Each group consist of only one observation. Do you need to adjust the group aesthetic?”

    3 answers



  • How can a line be overlaid on a bar plot using ggplot2?

    2 answers




I am trying to create a grouped bar chart with a line over it. The geom_bar and geom_line seem to work together when it is a single barchart however not when it is a grouped one. This is my code below which shows the barchart perfectly however does not show the line. The error message I am getting is: "geom_path: Each group consists of only one observation. Do you need to adjust the group aesthetic?"
Below is my code, does anyone know how to fix this?



  cbPalette <- c("grey20", "grey","black")
x <- read.csv("cuss_usage2.csv", header=TRUE, sep=",")
z <- read.csv("cuss_usage3.csv", header=TRUE, sep=",")

y <- data.frame (x)
a <-data.frame(z)


bar <- ggplot (group, aes(x=day, y=value)) +

geom_bar(aes(x=day, y=value,fill=variable),stat="identity",
position="dodge") +

geom_line(data=a, aes(x=day,y=percentage),color="black") +

scale_x_discrete(limits=c("Mon", "Tue", "Wed", "Thu", "Fri", "Sat",
"Sun")) +

scale_y_discrete(limits=c(0,2,4,6,8,10)) +

scale_fill_manual(values=cbPalette) + theme(legend.position="bottom")
+labs(fill="")+ylab("Journey Time (min)")+xlab("")



grid.arrange(bar)


Below is my csv data for bar plot:



day,pax,count
Mon,4,9
Tue,5,8
Wed,7,7
Thu,9,3
Fri,4,6
Sat,3,9
Sun,2,7


Below is my csv data for line:
day,percentage



Mon,5
Tue,5
Wed,3
Thu,5
Fri,2
Sat,4
Sun,3









share|improve this question















marked as duplicate by Jaap r
Users with the  r badge can single-handedly close r questions as duplicates and reopen them as needed.

StackExchange.ready(function() {
if (StackExchange.options.isMobile) return;

$('.dupe-hammer-message-hover:not(.hover-bound)').each(function() {
var $hover = $(this).addClass('hover-bound'),
$msg = $hover.siblings('.dupe-hammer-message');

$hover.hover(
function() {
$hover.showInfoMessage('', {
messageElement: $msg.clone().show(),
transient: false,
position: { my: 'bottom left', at: 'top center', offsetTop: -7 },
dismissable: false,
relativeToBody: true
});
},
function() {
StackExchange.helpers.removeMessages();
}
);
});
});
Nov 21 at 16:07


This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.















  • Your code doesn't match your variable names, please revise. There are no group, value, and variable.
    – Anonymous coward
    Nov 21 at 15:48













up vote
-1
down vote

favorite









up vote
-1
down vote

favorite












This question already has an answer here:




  • ggplot2 line chart gives “geom_path: Each group consist of only one observation. Do you need to adjust the group aesthetic?”

    3 answers



  • How can a line be overlaid on a bar plot using ggplot2?

    2 answers




I am trying to create a grouped bar chart with a line over it. The geom_bar and geom_line seem to work together when it is a single barchart however not when it is a grouped one. This is my code below which shows the barchart perfectly however does not show the line. The error message I am getting is: "geom_path: Each group consists of only one observation. Do you need to adjust the group aesthetic?"
Below is my code, does anyone know how to fix this?



  cbPalette <- c("grey20", "grey","black")
x <- read.csv("cuss_usage2.csv", header=TRUE, sep=",")
z <- read.csv("cuss_usage3.csv", header=TRUE, sep=",")

y <- data.frame (x)
a <-data.frame(z)


bar <- ggplot (group, aes(x=day, y=value)) +

geom_bar(aes(x=day, y=value,fill=variable),stat="identity",
position="dodge") +

geom_line(data=a, aes(x=day,y=percentage),color="black") +

scale_x_discrete(limits=c("Mon", "Tue", "Wed", "Thu", "Fri", "Sat",
"Sun")) +

scale_y_discrete(limits=c(0,2,4,6,8,10)) +

scale_fill_manual(values=cbPalette) + theme(legend.position="bottom")
+labs(fill="")+ylab("Journey Time (min)")+xlab("")



grid.arrange(bar)


Below is my csv data for bar plot:



day,pax,count
Mon,4,9
Tue,5,8
Wed,7,7
Thu,9,3
Fri,4,6
Sat,3,9
Sun,2,7


Below is my csv data for line:
day,percentage



Mon,5
Tue,5
Wed,3
Thu,5
Fri,2
Sat,4
Sun,3









share|improve this question
















This question already has an answer here:




  • ggplot2 line chart gives “geom_path: Each group consist of only one observation. Do you need to adjust the group aesthetic?”

    3 answers



  • How can a line be overlaid on a bar plot using ggplot2?

    2 answers




I am trying to create a grouped bar chart with a line over it. The geom_bar and geom_line seem to work together when it is a single barchart however not when it is a grouped one. This is my code below which shows the barchart perfectly however does not show the line. The error message I am getting is: "geom_path: Each group consists of only one observation. Do you need to adjust the group aesthetic?"
Below is my code, does anyone know how to fix this?



  cbPalette <- c("grey20", "grey","black")
x <- read.csv("cuss_usage2.csv", header=TRUE, sep=",")
z <- read.csv("cuss_usage3.csv", header=TRUE, sep=",")

y <- data.frame (x)
a <-data.frame(z)


bar <- ggplot (group, aes(x=day, y=value)) +

geom_bar(aes(x=day, y=value,fill=variable),stat="identity",
position="dodge") +

geom_line(data=a, aes(x=day,y=percentage),color="black") +

scale_x_discrete(limits=c("Mon", "Tue", "Wed", "Thu", "Fri", "Sat",
"Sun")) +

scale_y_discrete(limits=c(0,2,4,6,8,10)) +

scale_fill_manual(values=cbPalette) + theme(legend.position="bottom")
+labs(fill="")+ylab("Journey Time (min)")+xlab("")



grid.arrange(bar)


Below is my csv data for bar plot:



day,pax,count
Mon,4,9
Tue,5,8
Wed,7,7
Thu,9,3
Fri,4,6
Sat,3,9
Sun,2,7


Below is my csv data for line:
day,percentage



Mon,5
Tue,5
Wed,3
Thu,5
Fri,2
Sat,4
Sun,3




This question already has an answer here:




  • ggplot2 line chart gives “geom_path: Each group consist of only one observation. Do you need to adjust the group aesthetic?”

    3 answers



  • How can a line be overlaid on a bar plot using ggplot2?

    2 answers








r ggplot2 bar-chart






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 21 at 16:21

























asked Nov 21 at 15:26









Lydia Blakley

25




25




marked as duplicate by Jaap r
Users with the  r badge can single-handedly close r questions as duplicates and reopen them as needed.

StackExchange.ready(function() {
if (StackExchange.options.isMobile) return;

$('.dupe-hammer-message-hover:not(.hover-bound)').each(function() {
var $hover = $(this).addClass('hover-bound'),
$msg = $hover.siblings('.dupe-hammer-message');

$hover.hover(
function() {
$hover.showInfoMessage('', {
messageElement: $msg.clone().show(),
transient: false,
position: { my: 'bottom left', at: 'top center', offsetTop: -7 },
dismissable: false,
relativeToBody: true
});
},
function() {
StackExchange.helpers.removeMessages();
}
);
});
});
Nov 21 at 16:07


This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.






marked as duplicate by Jaap r
Users with the  r badge can single-handedly close r questions as duplicates and reopen them as needed.

StackExchange.ready(function() {
if (StackExchange.options.isMobile) return;

$('.dupe-hammer-message-hover:not(.hover-bound)').each(function() {
var $hover = $(this).addClass('hover-bound'),
$msg = $hover.siblings('.dupe-hammer-message');

$hover.hover(
function() {
$hover.showInfoMessage('', {
messageElement: $msg.clone().show(),
transient: false,
position: { my: 'bottom left', at: 'top center', offsetTop: -7 },
dismissable: false,
relativeToBody: true
});
},
function() {
StackExchange.helpers.removeMessages();
}
);
});
});
Nov 21 at 16:07


This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.














  • Your code doesn't match your variable names, please revise. There are no group, value, and variable.
    – Anonymous coward
    Nov 21 at 15:48


















  • Your code doesn't match your variable names, please revise. There are no group, value, and variable.
    – Anonymous coward
    Nov 21 at 15:48
















Your code doesn't match your variable names, please revise. There are no group, value, and variable.
– Anonymous coward
Nov 21 at 15:48




Your code doesn't match your variable names, please revise. There are no group, value, and variable.
– Anonymous coward
Nov 21 at 15:48

















active

oldest

votes






















active

oldest

votes













active

oldest

votes









active

oldest

votes






active

oldest

votes

kv0eh0Q6n4FI JG4l wl8gD,nwOI1cm,4UM,Rr4Fs a8G9HLmIidRCiU I24,mQ5ytUrhmt56 l3CgW2NuG7TIe Tu jg2uubh6qlQukgm
LCLjhsp,sfW 7rWYH0GpIL7Y5C 6vW 7zDfwiAW0vyUlNUXY,rkCKlZQNcY7peqz4I WCD,R8to,K FQyym1sitjHjY

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)