Sto provando a creare un diagramma di frequenza del numero di aspetti di un tipo di grafico per anno. Ho giocato con ggplot2 per un po ', ma penso che sia finita (sono appena iniziato con R)Linee di frequenza multiple sullo stesso grafico dove y è un valore di carattere
Ho allegato uno schema di quello che vorrei fosse il risultato. Uno degli altri problemi che sto incontrando è che ci sono molti anni in cui i tipi di grafico non appaiono. C'è un modo per escludere il tipo di grafico se non appare quell'anno?
ad es. nel 1940, non v'è alcuna "sociogramma" Non voglio avere un gruppo di linee a 0 ...
year <- c("1940","1940","1940","1940","1940","1940","1940","1940","1940","1940","1940","1941","1941","1941","1941","1941","1941","1941","1941","1941","1941","1941","1941","1941","1941")
type <- c("Line","Column", "Stacked Column", "Scatter with line", "Scatter with line", "Scatter with line", "Scatter with line", "Map with distribution","Line","Line","Line","Bar","Bar","Stacked bar","Column","Column","Sociogram","Sociogram","Column","Column","Column","Line","Line","Line","Line")
ytmatrix <- cbind(as.Date(as.character(year), "%Y", type))
Si prega di farmi sapere se qualcosa non ha senso. StackOverflow sta rapidamente diventando uno dei miei siti preferiti!
Grazie, Jon
Ecco quello che ho finora ... Grazie ancora per tutto il vostro aiuto!
Ed ecco come l'ho fatto (non posso ancora condividere il file di dati, dato che è qualcosa che speriamo di usarlo per una pubblicazione, ma l'area di ggplot è probabilmente la più interessante, anche se non l'ho davvero fare qualcosa di nuovo/che non è stato discusso nel post):
AJS = read.csv(data) #read in file
Type = AJS[,17] #select and name "Type" column from csv
Year = AJS[,13] #select and name "Year" column from csv
Year = substr(Year,9,12) #get rid of junk from year column
Year = as.Date(Year, "%Y") #convert the year character to a date
Year = format(Year, "%Y") #get rid of the dummy month and day
Type = as.data.frame(Type) #create data frame
yt <- cbind(Year,Type) #bind the year and type together
library(ggplot2)
trial <- ggplot(yt, aes(Year,..count.., group= Type)) + #plot the data followed by aes(x- axis, y-axis, group the lines)
geom_density(alpha = 0.25, aes(fill=Type)) +
opts(axis.text.x = theme_text(angle = 90, hjust = 0)) + #adjust the x axis ticks to horizontal
opts(title = expression("Trends in the Use of Visualizations in The American Journal of Sociology")) + #Add title
scale_y_continuous('Appearances (10 or more)') #change Y-axis label
trial
Non ha senso cercare attaccare una variabile Data in una matrice, anche dopo aver sostituito il parente destro mancante. –
Non sono sicuro che sia la ragione per cui non funziona ... – crock1255
Sono entrambi "personaggi" al momento. Tentare di calcolare le densità (che sembra essere il tuo obiettivo) sui valori dei personaggi può essere difficile. –