# R Dataset / Package HistData / Langren1644

Webform
Category

Webform
Category

Webform
Category

Webform
Category

Webform
Category

Webform
Category

## Visual Summaries

Embed
<iframe src="https://embed.picostat.com/r-dataset-package-histdata-langren1644.html" frameBorder="0" width="100%" height="307px" />
Attachment Size
1.05 KB
Documentation

## van Langren's Data on Longitude Distance between Toledo and Rome

### Description

Michael Florent van Langren (1598-1675) was a Dutch mathematician and astronomer, who served as a royal mathematician to King Phillip IV of Spain, and who worked on one of the most significant problems of his time— the accurate determination of longitude, particularly for navigation at sea.

In order to convince the Spanish court of the seriousness of the problem (often resulting in great losses through ship wrecks), he prepared a 1-dimensional line graph, showing all the available estimates of the distance in longitude between Toledo and Rome, which showed large errors, for even this modest distance. This 1D line graph, from Langren (1644), is believed to be the first known graph of statistical data (Friendly etal., 2010). It provides a compelling example of the notions of statistical variability and bias.

The data frame Langren1644 gives the estimates and other information derived from the previously known 1644 graph. It turns out that van Langren produced other versions of this graph, as early as 1628. The data frame Langren.all gives the estimates derived from all known versions of this graph.

### Usage

	data(Langren1644)
data(Langren.all)


### Format

Langren1644: A data frame with 12 observations on the following 9 variables, giving determinations of the distance in longitude between Toledo and Rome, from the 1644 graph.

Name

The name of the person giving a determination, a factor with levels A. Argelius ... T. Brahe

Longitude

Estimated value of the longitude distance between Toledo and Rome

Year

Year associated with this determination

Longname

A longer version of the Name, where appropriate; a factor with levels Andrea Argoli Christoph Clavius Tycho Brahe

City

The principal city where this person worked; a factor with levels Alexandria Amsterdam Bamberg Bologna Frankfurt Hven Leuven Middelburg Nuremberg Padua Paris Rome

Country

The country where this person worked; a factor with levels Belgium Denmark Egypt Flanders France Germany Italy Italy

Latitude

Latitude of this City; a numeric vector

Source

Likely source for this determination of Longitude; a factor with levels Astron Map

Gap

A numeric vector indicating whether the Longitude value is below or above the median

Langren.all: A data frame with 61 observations on the following 4 variables, giving determinations of Longitude between Toledo and Rome from all known versions of van Langren's graph.

Author

Author of the graph, a factor with levels Langren Lelewel

Year

Year of publication

Name

The name of the person giving a determination, a factor with levels Algunos1 Algunos2 Apianus ... Schonerus

Longitude

Estimated value of the longitude distance between Toledo and Rome

### Details

In all the graphs, Toledo is implicitly at the origin and Rome is located relatively at the value of Longitude To judge correspondence with an actual map, the positions in (lat, long) are

 toledo <- c(39.86, -4.03); rome <- c(41.89, 12.5) 

### Source

The longitude values were digitized from images of the various graphs, which may be found on the Supplementary materials page for Friendly etal. (2009).

### References

Friendly, M., Valero-Mora, P. and Ulargui, J. I. (2010). The First (Known) Statistical Graph: Michael Florent van Langren and the "Secret" of Longitude. The American Statistician, 64 (2), 185-191. Supplementary materials: http://datavis.ca/gallery/langren/.

Langren, M. F. van. (1644). La Verdadera Longitud por Mar y Tierra. Antwerp: (n.p.), 1644. English translation available at http://www.math.yorku.ca/SCS/Gallery/langren/verdadera.pdf.

Lelewel, J. (1851). G?ographie du Moyen ?ge. Paris: Pilliet, 1851.

### Examples

data(Langren1644)####################################################
# reproductions of Langren's graph overlaid on a map
# NB: dimensions from readJPEG are y, x, colors  gdim <- dim(gimage)[1:2]
ylim <- c(1,gdim)
xlim <- c(1,gdim)
op <- par(bty="n", xaxt="n", yaxt="n", mar=c(2, 1, 1, 1) + 0.1)
# NB: necessary to scale the plot to the pixel coordinates, and use asp=1
plot(xlim, ylim, xlim=xlim, ylim=ylim, type="n", ann=FALSE, asp=1 )
rasterImage(gimage, 1, 1, gdim, gdim)  # pixel coordinates of Toledo and Rome in the image, measured from the bottom left corner
toledo.map <- c(131, 59)
rome.map <- c(506, 119)

# confirm locations of Toledo and Rome
points(rbind(toledo.map, rome.map), cex=2)
text(131, 95, "Toledo", cex=1.5)
text(506, 104, "Roma", cex=1.5)  # set a scale for translation of lat,long to pixel x,y
scale <- data.frame(x=c(131, 856), y=c(52,52))
rownames(scale)=c(0,30)  # translate from degrees longitude to pixels
xlate <- function(x) {
131+x*726/30
}  # draw an axis
lines(scale)
ticks <- xlate(seq(0,30,5))
segments(ticks, 52, ticks, 45)
text(ticks, 40, seq(0,30,5))
text(xlate(8), 17, "Grados de la Longitud", cex=1.7)  # label the observations with the names
points(x=xlate(Langren1644$Longitude), y=rep(57, nrow(Langren1644)), pch=25, col="blue", bg="blue") text(x=xlate(Langren1644$Longitude), y=rep(57, nrow(Langren1644)),
labels=Langren1644$Name, srt=90, adj=c(-.1, .5), cex=0.8) par(op) }### Original implementation using ReadImages, now deprecated & shortly to be removed ## Not run: if (require(ReadImages)) { gimage <- read.jpeg(system.file("images", "google-toledo-rome3.jpg", package="HistData")) plot(gimage) # pixel coordinates of Toledo and Rome in the image, measured from the bottom left corner toledo.map <- c(130, 59) rome.map <- c(505, 119) # confirm locations of Toledo and Rome points(rbind(toledo.map, rome.map), cex=2) # set a scale for translation of lat,long to pixel x,y scale <- data.frame(x=c(130, 856), y=c(52,52)) rownames(scale)=c(0,30) lines(scale) xlate <- function(x) { 130+x*726/30 } points(x=xlate(Langren1644$Longitude), y=rep(57, nrow(Langren1644)),
pch=25, col="blue")
text(x=xlate(Langren1644$Longitude), y=rep(57, nrow(Langren1644)), labels=Langren1644$Name, srt=90, adj=c(0, 0.5), cex=0.8)
}## End(Not run)### First attempt using ggplot2; temporarily abandonned.
## Not run:
require(maps)
require(ggplot2)
require(reshape)
require(plyr)
require(scales)# set latitude to that of Toledo
Langren1644$Latitude <- 39.68# x/long y/lat bbox <- c( 38.186, -9.184, 43.692, 28.674 ) bbox <- matrix(bbox, 2, 2, byrow=TRUE)borders <- as.data.frame(map("world", plot = FALSE, xlim = expand_range(bbox[,2], 0.2), ylim = expand_range(bbox[,1], 0.2))[c("x", "y")])data(world.cities) # get actual locations of Toledo & Rome cities <- subset(world.cities, name %in% c("Rome", "Toledo") & country.etc %in% c("Spain", "Italy")) colnames(cities)[4:5]<-c("Latitude", "Longitude")mplot <- ggplot(Langren1644, aes(Longitude, Latitude) ) + geom_path(aes(x, y), borders, colour = "grey60") + geom_point(y = 40) + geom_text(aes(label = Name), y = 40.1, angle = 90, hjust = 0, size = 3) mplot <- mplot + geom_segment(aes(x=-4.03, y=40, xend=30, yend=40))mplot <- mplot + geom_point(data = cities, colour = "red", size = 2) + geom_text(data=cities, aes(label=name), color="red", size=3, vjust=-0.5) + coord_cartesian(xlim=bbox[,2], ylim=bbox[,1])# make the plot have approximately aspect ratio = 1 windows(width=10, height=2) mplot## End(Not run) ########################################### # show variation in estimates across graphs ###########################################library(lattice) graph <- paste(Langren.all$Author, Langren.all\$Year)
dotplot(Name ~ Longitude, data=Langren.all)dotplot( as.factor(Year) ~ Longitude, data=Langren.all, groups=Name, type="o")dotplot(Name ~ Longitude|graph, data=Langren.all, groups=graph)# why the gap?
gap.mod <- glm(Gap ~ Year + Source + Latitude, family=binomial, data=Langren1644)
anova(gap.mod, test="Chisq")

--

Dataset imported from https://www.r-project.org.

Picostat Manual
###### How To Register With a Username
1. Go to the user registration page.
4. Click Submit.
5. Click the link that was sent to the email address you registered with.
6. Clicking the link will open another page on Picostat where you can select a password.
7. Click Save and enter any profile details you wish to enter.
###### How To Register With Google Single Sign On (SSO)
1. Go to the user login page.
5. Google will redirect you back to Picostat with your new account created and you will be logged in.
6. Enter any profile details you wish to share.
1. Go to the user login page.
3. Click "Login". You will be redirected to your user homepage authenticated.
1. Go to the user login page.
3. If you already registered with Picostat via Google SSO, you will be redirected to your user homepage authenticated.
###### How To Import a Dataset
1. Create a Picostat account or login with your existing picostat account (see above).
2. Go to the dataset import page.
3. Select a license for the dataset. The default is "No License" but allows Picostat to host a copy of the dataset as per the privacy policy. You may wish to uncheck the "Public" option if you do not wish to share your dataset with others. R Datasets that come by downloading R have a GNU General Public License v3.0 which may also be selected from the Picostat dropdown.
4. Enter a title for the dataset
5. Choose a dataset input methods. Available options include:
• Random data - this populates your dataset with random numbers between 0 and 100. You can specify the number of rows and columns for the random dataset.
• CSV, TSV or TXT file - you will have the option upload a file within the current file size limit and also specify the header and whether or not the dataset is a contingency table. With contingency tables, the first column becomes a label for the rows. Currently with Picostat, there is limited support for contingency tables. Choose "Yes" to the Header option if the first line of the data contains titles for the rows. Also choose the Separator for the dataset. A separator is what breaks the data up. In some cases, a comma would separate data values in a row. You will also have the option to add documentation in the form keyboarded text and also uploaded documentation attachments. You can also specify a license for the documentation.
• Copy and Paste. This selection contains many of the same fields as importing a file with an additional textarea to copy and paste data to.
• Empty dataset. Start with a blank dataset and manually add data with the Picostat dataset editor.
• Excel file - Choose this option if you would like to convert your Excel spreadsheet to a Picostat dataset. With this selection, you will have the option to specify whether to use the first row in the Excel file as column names. If you would like to choose a specific sheet to use, you can also specify with entering its name in the text input.
• sas7bdat file - SAS is a powerful statistical software package that has its own proprietary file format. Choose this option if you are importing a SAS file.
• SPSS sav file - SPSS is a statistical package owned by IBM. You can import SPSS files by choosing this option.
6. Choose whether or not the dataset contains a header. Some of the dataset input methods allow you to specify whether or not a Header exists on the file. Sometimes dataset files contain a Header as the first row which names the columns. If you choose "Yes" to this, the first row in the dataset will become column headers.
7. You can also add documentation and specify a documentation license. This can be used to help explain your dataset to those unfamiliar with it.
8. Choose whether or not to upload an supporting attachments.
9. Pass the captcha. To prevent spam submissions, Picostat has a captcha which is used to prevent automated submissions by bots.
10. Choose a privacy setting for the dataset. You can also specify whether or not the dataset is Public. If you uncheck this setting, only you and the Picostat administrator will be able to view the dataset.
11. Submit the form. Once the form is validated, you will be redirected to the dataset homepage where you can choose to edit or perform statistical operations on the dataset.
###### How To Perform Statistical Analysis with Picostat
1. Go to any dataset homepage. You can get a full list at the dashboard.
2. Near the top of the page there will be two drop downs. One for analysis and one for education. Here we will choose Analyis. Choose from one of the following:
• Numerical Summaries - Here you can get the:
1. Arithmetic mean
2. Median
3. Quartiles
4. Minimum and Maximum
5. Stem-and-leaf plot
6. Standard deviation and Variance
7. IQR
8. Cumulative frequencies
• Plot - a plot of two columns on the cartesian coordinate system
• Boxplot - a Boxplot (box-and-whisker plot) of a column.
• Correlation Coefficient - Compute the correlation coefficient between two columns.
• Cumulative Frequency Histogram - Display a cumulative frequency histogram
• Dotplot
• Hollow Histogram - Plot two columns on the same histogram with a different color for each column.
• Pie Chart
• Regression - Perform a simple linear regression and compute the p-value and regression line. Also plots the data with the regression line.
• Stem and Leaf Plots - Plot a one or two-sided stem-and-leaf plot from one or two columns respectively.
• Visual Summaries - plots the following:
1. Frequency Histogram
2. Relative Frequency Histogram
3. Cumulative Frequency Histogram
4. Boxplot (Box-and-whisker plot)
5. Dotplot
3. PDF - Check this box if you want to download a PDF of the output from the statistical analysis application.
4. HTML - Check this box if you want a link to the HTML page created with the application.
5. R File - Check this box if you want a link to download the R commands used to generate output from this statistical application. You should be able to copy the commands verbatim into R Studio or R to recreate the analysis.
###### How To Use Educational Applications with Picostat
1. Go to any dataset homepage. You can get a full list at the dashboard.
2. Near the top of the page there will be two drop downs. One for analysis and one for education. Here we will choose Education. Choose from one of the following:
• How To Create a Barplot - This will show you how to create a bar chart after selecting a column with the mouse.
• How To Create a Stacked Barplot - This application will show you how to create a stacked bar plot from a column vector.
• How To Create a Pie Chart - This application will show you how to create a pie chart from a column of data
• How To Compute the Mean - This application will show you how to compute the mean from a column vector
• How To Create a Plot - This app will show you how to plot two columns in the cartesian coordinate system.
• How To Compute the Media - This statisistical app will show you how to compute the median from a column vector.
3. PDF - Check this box if you want to download a PDF of the output from the education application.
4. HTML - Check this box if you want a link to the HTML page created with the application.
Recent Queries For This Dataset

No queries made on this dataset yet.

Title Authored on Content type
US Baby Names in 2015 March 25, 2017 - 6:31 PM Dataset
R Dataset / Package DAAG / allbacks March 9, 2018 - 1:06 PM Dataset
R Dataset / Package DAAG / geophones March 9, 2018 - 1:06 PM Dataset
R Dataset / Package Ecdat / Bids March 9, 2018 - 1:06 PM Dataset
R Dataset / Package car / Womenlf March 9, 2018 - 1:06 PM Dataset