File:BrightonPavilionGraph.png

Page contents not supported in other languages.
This is a file from the Wikimedia Commons
From Wikipedia, the free encyclopedia

Original file(944 × 519 pixels, file size: 100 KB, MIME type: image/png)

Summary

Description
English: Election results for Brighton Pavilion constituency from its creation in 1950 to the 2017 general election. © Jeremy Atherton 2017.
Date 8 January 2006 (original upload date)
Source Transferred from en.wikipedia to Commons by Sreejithk2000 using CommonsHelper.
Author JeremyA at English Wikipedia


Notes

Graph drawn with R

The Background colour indicates the party of the sitting MP at any given year.

Parties:

Data Used:

Year Conservative Labour Liberal Green Other
1950.15 61.8 28 10.4
1951.9 68.5 31.5
1955.5 68.04 31.96
1959.83 69.98 30.32
1964.83 53.15 28.22 18.63
1966.33 58.14 41.86
1969 70.5 18.6 10.8
1970.5 61.93 35 3.06
1974.25 50.49 26.02 22.5 0.99
1974.86 48.43 29.57 22
1979.42 53.7 29.3 14.4 2.6
1983.5 51.5 23.9 24.6
1987.5 50.8 29.74 19.48
1992.33 46.6 38.3 12.7 2.2 0.2
1997.42 27.7 54.6 9.5 2.6 3
2001.5 25.1 48.7 13.1 9.3 3.7
2005.42 23.9 35.4 16.5 22 2.3
2010.35 23.7 28.9 13.8 31.3 2.2
2015.35 22.8 27.3 2.8 41.8 5.4
2017.44 19.2 26.8 52.3 1.8

Code:

The graph was produced with R. The following code will reproduce the graph using the data on this page.

library(tidyverse)
library(htmltab)

election_graph <- function(pageURL) {
  election <- htmltab(pageURL,
                      which = 2,
                      rm_nodata_cols = F)
  election <- as.tibble(lapply(election, function(x) {gsub("unopp", "100", x)}))
  
  tidy_election <- gather(election, "Party", "Votes", 2:length(election))
  tidy_election$Year <- as.numeric(tidy_election$Year)
  tidy_election$Party <- factor(tidy_election$Party, levels = c("Conservative", "Labour", "Liberal", "Green", "SNP", "UKIP", "Other"))
  tidy_election$Votes <- as.numeric(tidy_election$Votes)
  
  election_victor <- tidy_election %>% filter(is.na(Votes) == FALSE) %>% group_by(Year) %>% summarize(Party = Party[which(Votes == max(Votes))])
  election_victor$Year <- as.numeric(election_victor$Year)
  election_victor$start_year <- election_victor$Year
  election_victor$end_year <- c(election_victor$Year[-1], ceiling(election_victor$Year[length(election_victor$Year)] + 1))
  election_victor[1,3] <- floor(election_victor[1,3] - 1)
  
  tidy_election$Votes <- as.numeric(sapply(tidy_election$Votes, function(x) {gsub(100, NA, x)}))
  
  party_colours <- c("#0087DC", "#DC241F", "#FAA61A", "#008066", "#FFF95D", "#EFE600", "dark grey")
  names(party_colours) <- c("Conservative", "Labour", "Liberal", "Green", "SNP", "UKIP", "Other")
  
  ggplot(tidy_election) +
    geom_rect(data = election_victor,
              aes(xmin = start_year,xmax = end_year, ymin = -Inf, ymax = Inf, fill = Party),
              alpha = 0.35,
              show.legend = F) +
    geom_line(aes(x = Year, y = Votes, colour = Party), size = 0.703) +
    geom_point(aes(x = Year, y = Votes, colour = Party)) +
    geom_hline(yintercept = 100, color="black", size = 1.5) +
    geom_vline(xintercept = 2019, color="black", size = 1.5) +
    scale_colour_manual(values = party_colours) +
    scale_fill_manual(values = party_colours) +
    theme(text = element_text(color="black", size = 14),
          axis.text = element_text(color="black", size = 11),
          axis.line.x = element_line(color="black", size = 0.703),
          axis.ticks.x = element_line(color="black", size = 0.703),
          axis.line.y = element_line(color="black", size = 0.703),
          axis.ticks.y = element_line(color="black", size = 0.703),
          axis.ticks.length = unit(5, "points"),
          panel.grid.major = element_line(color="blue", size = 0.5, linetype = 3),
          panel.grid.minor = element_blank(),
          panel.background = element_blank(),
          legend.position = c(.98, .97),
          legend.direction = "horizontal",
          legend.text = element_text(color="black", size = 11),
          legend.title=element_blank(),
          legend.justification = c("right", "top"),
          legend.box.just = "right",
          legend.key = element_blank(),
          legend.background = element_rect(fill = "white", colour = "black"),
          legend.margin = margin(0, 4, 4, 4)) +
    scale_x_continuous(expand = c(0, 0), limits = c(election_victor[[1,3]], election_victor$end_year[length(election_victor$end_year)]), breaks = seq(1890, 2010, 10)) +
    scale_y_continuous(expand = c(0, 0), limits = c(0, 100), breaks = seq(0, 100, 20)) +
    labs(x = "Year", y = "Percentage Vote")
}

election_graph("https://commons.wikimedia.org/wiki/File:BrightonPavilionGraph.png")

ggsave("BrightonPavilionGraph.png", device = "png", units = "cm", width = 20, height = 11, dpi = 120)

Licensing

JeremyA at the English-language Wikipedia, the copyright holder of this work, hereby publishes it under the following license:
w:en:Creative Commons
attribution share alike
This file is licensed under the Creative Commons Attribution-Share Alike 3.0 Unported license. Subject to disclaimers.
Attribution: JeremyA at the English-language Wikipedia
You are free:
  • to share – to copy, distribute and transmit the work
  • to remix – to adapt the work
Under the following conditions:
  • attribution – You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
  • share alike – If you remix, transform, or build upon the material, you must distribute your contributions under the same or compatible license as the original.
This licensing tag was added to this file as part of the GFDL licensing update.
GNU head Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled GNU Free Documentation License. Subject to disclaimers.

Original upload log

The original description page was here. All following user names refer to en.wikipedia.
  • 2010-05-07 17:43 JeremyA 945×520× (69224 bytes)
  • 2006-10-21 19:17 Newprogressive 945×520× (22052 bytes) Reverted to earlier revision
  • 2006-10-21 19:16 Newprogressive 945×520× (22164 bytes) Reverted to earlier revision
  • 2006-01-08 19:57 JeremyA 945×520× (22052 bytes) Minor aesthetic change
  • 2006-01-08 19:50 JeremyA 945×520× (22164 bytes) correct a small mistake in the graph
  • 2006-01-08 19:42 JeremyA 945×520× (22269 bytes) Election results for [[Brighton Pavilion (UK Parliament constituency)|Brighton Pavilion]] constituency from its creation in 1950 to the 2005 general election. © Jeremy Atherton 2005. ==Notes== Graph drawn with IGOR Pro v.5.04 The Background colour

Captions

Add a one-line explanation of what this file represents

Items portrayed in this file

depicts

8 January 2006

image/png

5b8c97eb00fdcfb96a4c74a0b02910231283e387

102,435 byte

519 pixel

944 pixel

File history

Click on a date/time to view the file as it appeared at that time.

Date/TimeThumbnailDimensionsUserComment
current19:54, 14 June 2017Thumbnail for version as of 19:54, 14 June 2017944 × 519 (100 KB)JeremyAupdated
02:29, 2 June 2010Thumbnail for version as of 02:29, 2 June 2010945 × 520 (68 KB)File Upload Bot (Magnus Manske) {{BotMoveToCommons|en.wikipedia|year={{subst:CURRENTYEAR}}|month={{subst:CURRENTMONTHNAME}}|day={{subst:CURRENTDAY}}}} {{Information |Description={{en|Election results for Brighton Pavilion constitue