### Example: Point Plot
## Create a chart that shows the relationship between highway mileage and engine displacement

 mpg%>%
      ggplot()+
      geom_point(aes(x=displ, y=hwy))

### Example: Bar Chart
## Create a chart that shows the number of vehicles for each class of vehicle

mpg%>%
  ggplot()+
  geom_bar(aes(x=class))

### Example: Column Chart
## Create a chart that shows the median displacement for each class of vehicle

mpg%>%
  group_by(class)%>%
summarize(mdispl=median(displ))%>%
  ggplot()+
geom_col(aes(x=class, y=mdispl))

### Example: Bot Plot
#create a boxplot that shows the city mileage IQR for different classess of cars

mpg%>%
      ggplot()+
      geom_boxplot(aes(x=class, y=cty))

### Example: Histogram
#Create a histogram showing the highway milage per gallon for the vehicles 

mpg%>%
      ggplot()+
      geom_histogram(aes( x=hwy), binwidth = 1)


###Example: Aesthetics
## Show the relationship between highway mileage and engine displacement. In your chart color code the vehicle by class and vary the size of the points by 

 mpg%>%
      ggplot()+
      geom_point(aes(x=displ, y=cty, color=class, size=factor(year)), alpha=0.5)

###Example: STAT
##Create a chart that shows the median displacement for each vehicle class
mpg%>%
  ggplot()+
geom_pointrange(aes(x=class, y=displ), stat="summary")

###Alternative Example: STAT
##Create a chart that shows the median displacement for each vehicle class
mpg%>%
  ggplot()+
  stat_summary(mapping = aes(x=class, y = displ))

### Example: Position - Dodge 2
##Compare the number of vehicles for the different years

mpg%>%
 ggplot( ) +
  geom_bar(aes(x=class, fill = factor(year)), position = position_dodge2())

### Example: Position - Stack
##Compare the number of vehicles for the different years

mpg%>%
 ggplot( ) +
  geom_bar(aes(x=class, fill = factor(year)), position = position_stack())

### Example: Position - Fill
##Compare the number of vehicles for the different years

mpg%>%
 ggplot( ) +
  geom_bar(aes(x=class, fill = factor(year)), position = position_fill())

### Example: Coord Flip (Boxplot)
#Create a boxplot that shows the city mileage IQR for different classes of cars

mpg%>%
      ggplot()+
      geom_boxplot(aes(x=class, y=cty))+
coord_flip()


### Example: Facet Wrap -Point Plot
## Create a chart that shows the relationship between highway mileage and engine displacement for 1999 and for 2008
mpg%>%
      ggplot()+
      geom_point(aes(x=displ, y=cty))+
  facet_wrap(~year)


### Example: Facet Wrap 2 rows -Point Plot
## Create a chart that shows the relationship between highway mileage and engine displacement for 1999 and for 2008
mpg%>%
      ggplot()+
      geom_point(aes(x=displ, y=cty))+
  facet_wrap(~year, nrow = 2)

###Example, Scale - Point Plot
## Create a chart that shows the relationship between highway mileage and engine displacement for 1999 and for 2008. The scale for your x axis should range from 0-40 in increments of 10 and the scale for your y axis should range from 1.5 to 7 in increments of 0.5

mpg%>%
      ggplot()+
      geom_point(aes(x=displ, y=cty))+
  facet_wrap(~year)+
scale_y_continuous(limits = c(0,40),
                     breaks = seq(0,40, by=10))+
scale_x_continuous(limits = c(1.5,7),
                     breaks = seq(0.5,7, by=1))

NA
NA
###Example, Theme - Point Plot
## Create a chart that shows the relationship between highway mileage and engine displacement for 1999 and for 2008. The scale for your x axis should range from 0-40 in increments of 10 and the scale for your y axis should range from 1.5 to 7 in increments of 0.5. Use a grey theme.

mpg%>%
      ggplot()+
      geom_point(aes(x=displ, y=cty, color=class), size=3, alpha=0.5)+
  facet_wrap(~year)+
scale_y_continuous(limits = c(0,40),
                     breaks = seq(0,40, by=10))+
scale_x_continuous(limits = c(1.5,7),
                     breaks = seq(0.5,7, by=1))+
  theme_grey()

NA
NA
###Example, Titles - Point Plot
## Create a chart that shows the relationship between highway mileage and engine displacement for 1999 and for 2008. The scale for your x axis should range from 0-40 in increments of 10 and the scale for your y axis should range from 1.5 to 7 in increments of 0.5. Use a grey theme and label your plot.
mpg%>%
      ggplot()+
      geom_point(aes(x=displ, y=cty, color=class), size=3, alpha=0.5)+
  facet_wrap(~year)+
scale_y_continuous(limits = c(0,40),
                     breaks = seq(0,40, by=10))+
scale_x_continuous(limits = c(1.5,7),
                     breaks = seq(0.5,7, by=1))+
  labs(title = "Relationship Between Highway Mileage & Engine Displacement", y="City Mileage (mpg)", x="Engine Displacement")+
  theme_grey()

NA
NA
###Example, Adding Layers - Point Plot
## Create a chart that shows the relationship between highway mileage and engine displacement for 1999 and for 2008. The scale for your x axis should range from 0-40 in increments of 10 and the scale for your y axis should range from 1.5 to 7 in increments of 0.5. Use a grey theme and label your plot.Include a trend line
mpg%>%
      ggplot(aes(x=displ, y=cty))+
      geom_point(aes(x=displ, y=cty),size=3, alpha=0.5, color="blue")+
  geom_smooth()+
  facet_wrap(~year)+
scale_y_continuous(limits = c(0,40),
                     breaks = seq(0,40, by=10))+
scale_x_continuous(limits = c(1.5,7),
                     breaks = seq(0.5,7, by=1))+
  labs(title = "Relationship Between Highway Mileage & Engine Displacement", y="City Mileage (mpg)", x="Engine Displacement")+
  theme_grey()

LS0tDQp0aXRsZTogIkludHJvIHRvIGdncGxvdDIiDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQoNCg0KYGBge3J9DQojIyMgRXhhbXBsZTogUG9pbnQgUGxvdA0KIyMgQ3JlYXRlIGEgY2hhcnQgdGhhdCBzaG93cyB0aGUgcmVsYXRpb25zaGlwIGJldHdlZW4gaGlnaHdheSBtaWxlYWdlIGFuZCBlbmdpbmUgZGlzcGxhY2VtZW50DQoNCiBtcGclPiUNCiAgICAgIGdncGxvdCgpKw0KICAgICAgZ2VvbV9wb2ludChhZXMoeD1kaXNwbCwgeT1od3kpKQ0KYGBgDQpgYGB7cn0NCiMjIyBFeGFtcGxlOiBCYXIgQ2hhcnQNCiMjIENyZWF0ZSBhIGNoYXJ0IHRoYXQgc2hvd3MgdGhlIG51bWJlciBvZiB2ZWhpY2xlcyBmb3IgZWFjaCBjbGFzcyBvZiB2ZWhpY2xlDQoNCm1wZyU+JQ0KICBnZ3Bsb3QoKSsNCiAgZ2VvbV9iYXIoYWVzKHg9Y2xhc3MpKQ0KYGBgDQpgYGB7cn0NCiMjIyBFeGFtcGxlOiBDb2x1bW4gQ2hhcnQNCiMjIENyZWF0ZSBhIGNoYXJ0IHRoYXQgc2hvd3MgdGhlIG1lZGlhbiBkaXNwbGFjZW1lbnQgZm9yIGVhY2ggY2xhc3Mgb2YgdmVoaWNsZQ0KDQptcGclPiUNCiAgZ3JvdXBfYnkoY2xhc3MpJT4lDQpzdW1tYXJpemUobWRpc3BsPW1lZGlhbihkaXNwbCkpJT4lDQogIGdncGxvdCgpKw0KZ2VvbV9jb2woYWVzKHg9Y2xhc3MsIHk9bWRpc3BsKSkNCmBgYA0KYGBge3J9DQojIyMgRXhhbXBsZTogQm90IFBsb3QNCiNjcmVhdGUgYSBib3hwbG90IHRoYXQgc2hvd3MgdGhlIGNpdHkgbWlsZWFnZSBJUVIgZm9yIGRpZmZlcmVudCBjbGFzc2VzcyBvZiBjYXJzDQoNCm1wZyU+JQ0KICAgICAgZ2dwbG90KCkrDQogICAgICBnZW9tX2JveHBsb3QoYWVzKHg9Y2xhc3MsIHk9Y3R5KSkNCmBgYA0KYGBge3J9DQojIyMgRXhhbXBsZTogSGlzdG9ncmFtDQojQ3JlYXRlIGEgaGlzdG9ncmFtIHNob3dpbmcgdGhlIGhpZ2h3YXkgbWlsZWFnZSBwZXIgZ2FsbG9uIGZvciB0aGUgdmVoaWNsZXMgDQoNCm1wZyU+JQ0KICAgICAgZ2dwbG90KCkrDQogICAgICBnZW9tX2hpc3RvZ3JhbShhZXMoIHg9aHd5KSwgYmlud2lkdGggPSAxKQ0KYGBgDQpgYGB7cn0NCiMjI0V4YW1wbGU6IEFlc3RoZXRpY3MNCiMjIFNob3cgdGhlIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIGNpdHkgbWlsZWFnZSBhbmQgZW5naW5lIGRpc3BsYWNlbWVudC4gSW4geW91ciBjaGFydCBjb2xvciBjb2RlIHRoZSB2ZWhpY2xlIGJ5IGNsYXNzIGFuZCB2YXJ5IHRoZSBzaXplIG9mIHRoZSBwb2ludHMgYnkgeWVhci4gDQoNCiBtcGclPiUNCiAgICAgIGdncGxvdCgpKw0KICAgICAgZ2VvbV9wb2ludChhZXMoeD1kaXNwbCwgeT1jdHksIGNvbG9yPWNsYXNzLCBzaXplPWZhY3Rvcih5ZWFyKSksIGFscGhhPTAuNSkNCmBgYA0KDQoNCmBgYHtyfQ0KIyMjRXhhbXBsZTogU1RBVA0KIyNDcmVhdGUgYSBjaGFydCB0aGF0IHNob3dzIHRoZSBtZWRpYW4gZGlzcGxhY2VtZW50IGZvciBlYWNoIHZlaGljbGUgY2xhc3MNCm1wZyU+JQ0KICBnZ3Bsb3QoKSsNCmdlb21fcG9pbnRyYW5nZShhZXMoeD1jbGFzcywgeT1kaXNwbCksIHN0YXQ9InN1bW1hcnkiKQ0KYGBgDQpgYGB7cn0NCiMjI0FsdGVybmF0aXZlIEV4YW1wbGU6IFNUQVQNCiMjQ3JlYXRlIGEgY2hhcnQgdGhhdCBzaG93cyB0aGUgbWVkaWFuIGRpc3BsYWNlbWVudCBmb3IgZWFjaCB2ZWhpY2xlIGNsYXNzDQptcGclPiUNCiAgZ2dwbG90KCkrDQogIHN0YXRfc3VtbWFyeShtYXBwaW5nID0gYWVzKHg9Y2xhc3MsIHkgPSBkaXNwbCkpDQpgYGANCg0KDQpgYGB7cn0NCiMjIyBFeGFtcGxlOiBQb3NpdGlvbiAtIERvZGdlIDINCiMjQ29tcGFyZSB0aGUgbnVtYmVyIG9mIHZlaGljbGVzIGZvciB0aGUgZGlmZmVyZW50IHllYXJzDQoNCm1wZyU+JQ0KIGdncGxvdCggKSArDQogIGdlb21fYmFyKGFlcyh4PWNsYXNzLCBmaWxsID0gZmFjdG9yKHllYXIpKSwgcG9zaXRpb24gPSBwb3NpdGlvbl9kb2RnZTIoKSkNCmBgYA0KDQpgYGB7cn0NCiMjIyBFeGFtcGxlOiBQb3NpdGlvbiAtIFN0YWNrDQojI0NvbXBhcmUgdGhlIG51bWJlciBvZiB2ZWhpY2xlcyBmb3IgdGhlIGRpZmZlcmVudCB5ZWFycw0KDQptcGclPiUNCiBnZ3Bsb3QoICkgKw0KICBnZW9tX2JhcihhZXMoeD1jbGFzcywgZmlsbCA9IGZhY3Rvcih5ZWFyKSksIHBvc2l0aW9uID0gcG9zaXRpb25fc3RhY2soKSkNCmBgYA0KDQpgYGB7cn0NCiMjIyBFeGFtcGxlOiBQb3NpdGlvbiAtIEZpbGwNCiMjQ29tcGFyZSB0aGUgbnVtYmVyIG9mIHZlaGljbGVzIGZvciB0aGUgZGlmZmVyZW50IHllYXJzDQoNCm1wZyU+JQ0KIGdncGxvdCggKSArDQogIGdlb21fYmFyKGFlcyh4PWNsYXNzLCBmaWxsID0gZmFjdG9yKHllYXIpKSwgcG9zaXRpb24gPSBwb3NpdGlvbl9maWxsKCkpDQpgYGANCmBgYHtyfQ0KIyMjIEV4YW1wbGU6IENvb3JkIEZsaXAgKEJveHBsb3QpDQojQ3JlYXRlIGEgYm94cGxvdCB0aGF0IHNob3dzIHRoZSBjaXR5IG1pbGVhZ2UgSVFSIGZvciBkaWZmZXJlbnQgY2xhc3NlcyBvZiBjYXJzDQoNCm1wZyU+JQ0KICAgICAgZ2dwbG90KCkrDQogICAgICBnZW9tX2JveHBsb3QoYWVzKHg9Y2xhc3MsIHk9Y3R5KSkrDQpjb29yZF9mbGlwKCkNCmBgYA0KDQoNCmBgYHtyfQ0KIyMjIEV4YW1wbGU6IEZhY2V0IFdyYXAgLVBvaW50IFBsb3QNCiMjIENyZWF0ZSBhIGNoYXJ0IHRoYXQgc2hvd3MgdGhlIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIGhpZ2h3YXkgbWlsZWFnZSBhbmQgZW5naW5lIGRpc3BsYWNlbWVudCBmb3IgMTk5OSBhbmQgZm9yIDIwMDgNCm1wZyU+JQ0KICAgICAgZ2dwbG90KCkrDQogICAgICBnZW9tX3BvaW50KGFlcyh4PWRpc3BsLCB5PWN0eSkpKw0KICBmYWNldF93cmFwKH55ZWFyKQ0KYGBgDQoNCmBgYHtyfQ0KDQojIyMgRXhhbXBsZTogRmFjZXQgV3JhcCAyIHJvd3MgLVBvaW50IFBsb3QNCiMjIENyZWF0ZSBhIGNoYXJ0IHRoYXQgc2hvd3MgdGhlIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIGhpZ2h3YXkgbWlsZWFnZSBhbmQgZW5naW5lIGRpc3BsYWNlbWVudCBmb3IgMTk5OSBhbmQgZm9yIDIwMDgNCm1wZyU+JQ0KICAgICAgZ2dwbG90KCkrDQogICAgICBnZW9tX3BvaW50KGFlcyh4PWRpc3BsLCB5PWN0eSkpKw0KICBmYWNldF93cmFwKH55ZWFyLCBucm93ID0gMikNCmBgYA0KYGBge3J9DQojIyNFeGFtcGxlLCBTY2FsZSAtIFBvaW50IFBsb3QNCiMjIENyZWF0ZSBhIGNoYXJ0IHRoYXQgc2hvd3MgdGhlIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIGhpZ2h3YXkgbWlsZWFnZSBhbmQgZW5naW5lIGRpc3BsYWNlbWVudCBmb3IgMTk5OSBhbmQgZm9yIDIwMDguIFRoZSBzY2FsZSBmb3IgeW91ciB4IGF4aXMgc2hvdWxkIHJhbmdlIGZyb20gMC00MCBpbiBpbmNyZW1lbnRzIG9mIDEwIGFuZCB0aGUgc2NhbGUgZm9yIHlvdXIgeSBheGlzIHNob3VsZCByYW5nZSBmcm9tIDEuNSB0byA3IGluIGluY3JlbWVudHMgb2YgMC41DQoNCm1wZyU+JQ0KICAgICAgZ2dwbG90KCkrDQogICAgICBnZW9tX3BvaW50KGFlcyh4PWRpc3BsLCB5PWN0eSkpKw0KICBmYWNldF93cmFwKH55ZWFyKSsNCnNjYWxlX3lfY29udGludW91cyhsaW1pdHMgPSBjKDAsNDApLA0KICAgICAgICAgICAgICAgICAgICAgYnJlYWtzID0gc2VxKDAsNDAsIGJ5PTEwKSkrDQpzY2FsZV94X2NvbnRpbnVvdXMobGltaXRzID0gYygxLjUsNyksDQogICAgICAgICAgICAgICAgICAgICBicmVha3MgPSBzZXEoMC41LDcsIGJ5PTEpKQ0KYGBgDQpgYGB7cn0NCiMjI0V4YW1wbGUsIFRoZW1lIC0gUG9pbnQgUGxvdA0KIyMgQ3JlYXRlIGEgY2hhcnQgdGhhdCBzaG93cyB0aGUgcmVsYXRpb25zaGlwIGJldHdlZW4gaGlnaHdheSBtaWxlYWdlIGFuZCBlbmdpbmUgZGlzcGxhY2VtZW50IGZvciAxOTk5IGFuZCBmb3IgMjAwOC4gVGhlIHNjYWxlIGZvciB5b3VyIHggYXhpcyBzaG91bGQgcmFuZ2UgZnJvbSAwLTQwIGluIGluY3JlbWVudHMgb2YgMTAgYW5kIHRoZSBzY2FsZSBmb3IgeW91ciB5IGF4aXMgc2hvdWxkIHJhbmdlIGZyb20gMS41IHRvIDcgaW4gaW5jcmVtZW50cyBvZiAwLjUuIFVzZSBhIGdyZXkgdGhlbWUuDQoNCm1wZyU+JQ0KICAgICAgZ2dwbG90KCkrDQogICAgICBnZW9tX3BvaW50KGFlcyh4PWRpc3BsLCB5PWN0eSwgY29sb3I9Y2xhc3MpLCBzaXplPTMsIGFscGhhPTAuNSkrDQogIGZhY2V0X3dyYXAofnllYXIpKw0Kc2NhbGVfeV9jb250aW51b3VzKGxpbWl0cyA9IGMoMCw0MCksDQogICAgICAgICAgICAgICAgICAgICBicmVha3MgPSBzZXEoMCw0MCwgYnk9MTApKSsNCnNjYWxlX3hfY29udGludW91cyhsaW1pdHMgPSBjKDEuNSw3KSwNCiAgICAgICAgICAgICAgICAgICAgIGJyZWFrcyA9IHNlcSgwLjUsNywgYnk9MSkpKw0KICB0aGVtZV9ncmV5KCkNCmBgYA0KYGBge3J9DQojIyNFeGFtcGxlLCBUaXRsZXMgLSBQb2ludCBQbG90DQojIyBDcmVhdGUgYSBjaGFydCB0aGF0IHNob3dzIHRoZSByZWxhdGlvbnNoaXAgYmV0d2VlbiBoaWdod2F5IG1pbGVhZ2UgYW5kIGVuZ2luZSBkaXNwbGFjZW1lbnQgZm9yIDE5OTkgYW5kIGZvciAyMDA4LiBUaGUgc2NhbGUgZm9yIHlvdXIgeCBheGlzIHNob3VsZCByYW5nZSBmcm9tIDAtNDAgaW4gaW5jcmVtZW50cyBvZiAxMCBhbmQgdGhlIHNjYWxlIGZvciB5b3VyIHkgYXhpcyBzaG91bGQgcmFuZ2UgZnJvbSAxLjUgdG8gNyBpbiBpbmNyZW1lbnRzIG9mIDAuNS4gVXNlIGEgZ3JleSB0aGVtZSBhbmQgbGFiZWwgeW91ciBwbG90Lg0KbXBnJT4lDQogICAgICBnZ3Bsb3QoKSsNCiAgICAgIGdlb21fcG9pbnQoYWVzKHg9ZGlzcGwsIHk9Y3R5LCBjb2xvcj1jbGFzcyksIHNpemU9MywgYWxwaGE9MC41KSsNCiAgZmFjZXRfd3JhcCh+eWVhcikrDQpzY2FsZV95X2NvbnRpbnVvdXMobGltaXRzID0gYygwLDQwKSwNCiAgICAgICAgICAgICAgICAgICAgIGJyZWFrcyA9IHNlcSgwLDQwLCBieT0xMCkpKw0Kc2NhbGVfeF9jb250aW51b3VzKGxpbWl0cyA9IGMoMS41LDcpLA0KICAgICAgICAgICAgICAgICAgICAgYnJlYWtzID0gc2VxKDAuNSw3LCBieT0xKSkrDQogIGxhYnModGl0bGUgPSAiUmVsYXRpb25zaGlwIEJldHdlZW4gSGlnaHdheSBNaWxlYWdlICYgRW5naW5lIERpc3BsYWNlbWVudCIsIHk9IkNpdHkgTWlsZWFnZSAobXBnKSIsIHg9IkVuZ2luZSBEaXNwbGFjZW1lbnQiKSsNCiAgdGhlbWVfZ3JleSgpDQpgYGANCmBgYHtyfQ0KIyMjRXhhbXBsZSwgQWRkaW5nIExheWVycyAtIFBvaW50IFBsb3QNCiMjIENyZWF0ZSBhIGNoYXJ0IHRoYXQgc2hvd3MgdGhlIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIGhpZ2h3YXkgbWlsZWFnZSBhbmQgZW5naW5lIGRpc3BsYWNlbWVudCBmb3IgMTk5OSBhbmQgZm9yIDIwMDguIFRoZSBzY2FsZSBmb3IgeW91ciB4IGF4aXMgc2hvdWxkIHJhbmdlIGZyb20gMC00MCBpbiBpbmNyZW1lbnRzIG9mIDEwIGFuZCB0aGUgc2NhbGUgZm9yIHlvdXIgeSBheGlzIHNob3VsZCByYW5nZSBmcm9tIDEuNSB0byA3IGluIGluY3JlbWVudHMgb2YgMC41LiBVc2UgYSBncmV5IHRoZW1lIGFuZCBsYWJlbCB5b3VyIHBsb3QuSW5jbHVkZSBhIHRyZW5kIGxpbmUNCm1wZyU+JQ0KICAgICAgZ2dwbG90KGFlcyh4PWRpc3BsLCB5PWN0eSkpKw0KICAgICAgZ2VvbV9wb2ludChhZXMoeD1kaXNwbCwgeT1jdHkpLHNpemU9MywgYWxwaGE9MC41LCBjb2xvcj0iYmx1ZSIpKw0KICBnZW9tX3Ntb290aCgpKw0KICBmYWNldF93cmFwKH55ZWFyKSsNCnNjYWxlX3lfY29udGludW91cyhsaW1pdHMgPSBjKDAsNDApLA0KICAgICAgICAgICAgICAgICAgICAgYnJlYWtzID0gc2VxKDAsNDAsIGJ5PTEwKSkrDQpzY2FsZV94X2NvbnRpbnVvdXMobGltaXRzID0gYygxLjUsNyksDQogICAgICAgICAgICAgICAgICAgICBicmVha3MgPSBzZXEoMC41LDcsIGJ5PTEpKSsNCiAgbGFicyh0aXRsZSA9ICJSZWxhdGlvbnNoaXAgQmV0d2VlbiBIaWdod2F5IE1pbGVhZ2UgJiBFbmdpbmUgRGlzcGxhY2VtZW50IiwgeT0iQ2l0eSBNaWxlYWdlIChtcGcpIiwgeD0iRW5naW5lIERpc3BsYWNlbWVudCIpKw0KICB0aGVtZV9ncmV5KCkNCmBgYA0K