{"id":32,"date":"2015-01-19T11:52:43","date_gmt":"2015-01-19T18:52:43","guid":{"rendered":"https:\/\/blogs.ubc.ca\/wtamagi\/?p=32"},"modified":"2015-01-19T11:54:08","modified_gmt":"2015-01-19T18:54:08","slug":"r-stat-frequency-plot-adding-titles-to-graph-plot","status":"publish","type":"post","link":"https:\/\/blogs.ubc.ca\/wtamagi\/2015\/01\/19\/r-stat-frequency-plot-adding-titles-to-graph-plot\/","title":{"rendered":"R &#8211; Stat Frequency Plot &#8211; adding titles to graph plot"},"content":{"rendered":"<p>&gt; AirQualityIndex &lt;- read.csv(&#8220;h:\\\\AirQualityIndex.txt&#8221;, header=TRUE, stringsAsFactors=FALSE)<\/p>\n<p>Read in data into table AirQualityIndex<\/p>\n<p>&gt; AQI=AirQualityIndex$AQI.O3<\/p>\n<p>Set AQI array to data in column AQI.03<\/p>\n<p>&gt; range(AQI)<br \/>\n[1]\u00a0 8 49<\/p>\n<p>Range of values for AQI<\/p>\n<p>&gt; breaks=seq(8,50,by=6)<\/p>\n<p>Create an array of values broken into intervals of 6 beginning at 8, then 14,&#8230;<\/p>\n<p>&gt; AQI.cut=cut(AQI,breaks,right=F)<\/p>\n<p>Data is classified into intervals<\/p>\n<p>&gt; AQI.freq=table(AQI.cut)<\/p>\n<p>Summarizes data, counting the frequency of data per interval<\/p>\n<p>&gt; AQI.freq<br \/>\nAQI.cut<br \/>\n[8,14) [14,20) [20,26) [26,32) [32,38) [38,44) [44,50)<br \/>\n5\u00a0\u00a0\u00a0\u00a0\u00a0 12\u00a0\u00a0\u00a0\u00a0\u00a0 10\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 4\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 3\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 1<\/p>\n<p>Outputs the the freqency of values per interval<\/p>\n<p>&gt; nrow(AirQualityIndex)<br \/>\n[1] 36<\/p>\n<p>Row count of values.<\/p>\n<p>&gt; AQI.relfreq=AQI.freq\/(nrow(AirQualityIndex))<\/p>\n<p>Calculate the percentage of values per interval divide the interval count by the total number of rows<\/p>\n<p>&gt; AQI.relfreq<br \/>\nAQI.cut<br \/>\n[8,14)\u00a0\u00a0\u00a0 [14,20)\u00a0\u00a0\u00a0 [20,26)\u00a0\u00a0\u00a0 [26,32)\u00a0\u00a0\u00a0 [32,38)\u00a0\u00a0\u00a0 [38,44)\u00a0\u00a0\u00a0 [44,50)<br \/>\n0.13888889 0.33333333 0.27777778 0.11111111 0.08333333 0.02777778 0.02777778<br \/>\n&gt; nrow(AirQualityIndex)<br \/>\n[1] 36<br \/>\n&gt; midpoints.breaks=seq(11,47,by=6)<br \/>\n&gt; midpoints.breaks<br \/>\n[1] 11 17 23 29 35 41 47<br \/>\n&gt; plot(midpoints.breaks,AQI.relfreq,\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 #plot the data x is midpoints.breaks, y is AQI.relfreq<br \/>\n+\u00a0 main=&#8221;Air Quality Index, Sudbury Ontario&#8221;,\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 #+ main title<br \/>\n+\u00a0 xlab=&#8221;Daily Ozone Readings&#8221;,\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 #+ label &#8211; horizontal axis<br \/>\n+\u00a0 ylab=&#8221;Relative Frequency&#8221;)<br \/>\n&gt; lines(midpoints.breaks,AQI.relfreq)\u00a0 # connects the dots with lines<br \/>\n&gt; axis(side=2) # display y-axis values<\/p>\n<p><a href=\"https:\/\/blogs.ubc.ca\/wtamagi\/files\/2015\/01\/frequency-plot-with-titles.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-34\" src=\"https:\/\/blogs.ubc.ca\/wtamagi\/files\/2015\/01\/frequency-plot-with-titles-296x300.png\" alt=\"frequency plot with titles\" width=\"296\" height=\"300\" srcset=\"https:\/\/blogs.ubc.ca\/wtamagi\/files\/2015\/01\/frequency-plot-with-titles-296x300.png 296w, https:\/\/blogs.ubc.ca\/wtamagi\/files\/2015\/01\/frequency-plot-with-titles-624x632.png 624w, https:\/\/blogs.ubc.ca\/wtamagi\/files\/2015\/01\/frequency-plot-with-titles.png 645w\" sizes=\"auto, (max-width: 296px) 100vw, 296px\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>&gt; AirQualityIndex &lt;- read.csv(&#8220;h:\\\\AirQualityIndex.txt&#8221;, header=TRUE, stringsAsFactors=FALSE) Read in data into table AirQualityIndex &gt; AQI=AirQualityIndex$AQI.O3 Set AQI array to data in column AQI.03 &gt; range(AQI) [1]\u00a0 8 49 Range of values for AQI &gt; breaks=seq(8,50,by=6) Create an array of values broken into intervals of 6 beginning at 8, then 14,&#8230; &gt; AQI.cut=cut(AQI,breaks,right=F) Data is classified into [&hellip;]<\/p>\n","protected":false},"author":25150,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-32","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/blogs.ubc.ca\/wtamagi\/wp-json\/wp\/v2\/posts\/32","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.ubc.ca\/wtamagi\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.ubc.ca\/wtamagi\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.ubc.ca\/wtamagi\/wp-json\/wp\/v2\/users\/25150"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.ubc.ca\/wtamagi\/wp-json\/wp\/v2\/comments?post=32"}],"version-history":[{"count":2,"href":"https:\/\/blogs.ubc.ca\/wtamagi\/wp-json\/wp\/v2\/posts\/32\/revisions"}],"predecessor-version":[{"id":35,"href":"https:\/\/blogs.ubc.ca\/wtamagi\/wp-json\/wp\/v2\/posts\/32\/revisions\/35"}],"wp:attachment":[{"href":"https:\/\/blogs.ubc.ca\/wtamagi\/wp-json\/wp\/v2\/media?parent=32"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.ubc.ca\/wtamagi\/wp-json\/wp\/v2\/categories?post=32"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.ubc.ca\/wtamagi\/wp-json\/wp\/v2\/tags?post=32"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}