File talk:Hard drive capacity over time.svg
Legacy file information
[edit]Here is a copy of metadata about this image that got difficult to find after subsequent re-format from PNG to to SVG and then move to Commons. As of 2011, info can still be found at en:File talk:Hard drive capacity over time.png and en:File:Hard drive capacity over time.png. The gnuplot script needs some tweaking to produce SVG. Hankwang (talk) 20:27, 18 September 2011 (UTC)
Current version including 2008 data. Script and data to generate the plot below. I donate this version (including the 2008 data) to the public domain. Hankwang 17:00, 2 March 2008 (UTC)
File:Hard drive capacity over time.svg is a vector version of this file.
File:Hard drive capacity over time.svg → File:Hard drive capacity over time.svg
For more information, see Help:SVG. |
I, the copyright holder of this work, release this work into the public domain. This applies worldwide. In some countries this may not be legally possible; if so: I grant anyone the right to use this work for any purpose, without any conditions, unless such conditions are required by law. |
See also: File talk:Hard drive capacity over time.png#Data
Old description
[edit]"Personal Computer hard disk drive capacity (in gigabytes) over time. Data culled from [1]. This is very much a first cut -- an improved image with more data extending further back in time would be much better than this. The spreadsheet I used is available; leave me a message on my talk page."
File information
[edit]This file was marked as equivalent to w:Image:KrydersLaw.png from en.wikipedia.org according to the NowCommons tag.
This is the edit history for that file's page:
- [2006-02-01T06:58:28Z] Dantheox ([[Personal Computer]] [[hard disk]] capacity (in [[Gigabytes]]) over time. Data culled from [--www.littletechshoppe.com/ns1625/winchest.html]. This is very much a first cut -- an improved image with more data extending further back in time would be m)
- [2006-02-01T07:09:04Z] Dantheox (/* Summary */ source data available)
- [2006-10-27T23:39:50Z] Omegatron («+{{nowCommons|Hard drive capacity over time.png}}»)
- [2006-10-27T23:40:13Z] Omegatron («+"Image:"»)
Original title:
- KrydersLaw.png
Upload log:
- (del) (cur) 06:58, 1 February 2006 . . Dantheox (Talk | contribs) . . 585×428 (12,030 bytes) (Personal Computer hard disk capacity (in Gigabytes) over time. Data culled from [--www.littletechshoppe.com/ns1625/winchest.html]. This is very much a first cut -- an improved image with more data extending further back in time would be m)
Text:
== Summary ==
[[Personal Computer]] [[hard disk]] capacity (in [[Gigabytes]]) over time. Data culled from [--www.littletechshoppe.com/ns1625/winchest.html]. This is very much a first cut -- an improved image with more data extending further back in time would be much better than this. The spreadsheet I used is available; leave me a message on my [[User_Talk:Dantheox|talk page]].
== Licensing ==
{{PD-self}}
Poccil 14:02, 30 October 2006 (UTC)
Data
[edit]This was posted to File:Hard drive capacity over time.png/data by User:Hankwang at 2008-03-02T17:54:13 and 2008-03-02T18:04:01. --JuTa (talk) 02:14, 31 July 2011 (UTC)
Gnuplot script(outdated)
[edit]# gnuplot script # outdated see https://commons.wikimedia.org/wiki/File:Hard_drive_capacity_over_time.svg for the current version set log y set xra [1979:*] unset grid unset key set xlabel 'Year' set ylabel 'Capacity (GB)' set style data points set mytics 10 ## gnuplot version with Fedora Core 3 # set term png small picsize 600 400 xffffff x000000 xa0a0a0 x00bf00 xbf0000 x0000bf ## gnuplot version with Ubuntu Linux 6,7 set term png small size 600,400 xffffff x000000 xa0a0a0 x00bf00 xbf0000 x0000bf set output 'Hard_drive_capacity_over_time.png' c0=0.00195 k=0.4487 cap(y) = c0*exp(k*(y-1980)) set style line 1 lt 2 lw 2 pt 2 ps 0.5 set style line 2 lt 3 lw 2 fit log(cap(x)) 'hdspace-e.dat' usi ($1+($2-1)/12.+($3-1)/365.):(log($4)) via k,c0 set format x '%4.0f-Jan' plot \ 'hdspace-e.dat' usi ($1+($2-1)/12.+($3-1)/365.):4 ls 1, \ cap(x) ls 2
Gnuplot is available for all platforms.
Data (outdated)
[edit]Filename hdspace-e.dat for use in the above script. Data source: Historical Notes about the Cost of Hard Drive Storage Space (moved here), with data for 2008 added.
# outdated see https://commons.wikimedia.org/wiki/File:Hard_drive_capacity_over_time.svg for the current version 1956 00 15 0.005 1980 01 15 0.026 1980 07 15 0.018 1981 09 15 0.005 1981 11 15 0.005 1981 12 15 0.0063 1981 12 15 0.01 1981 12 15 0.01 1981 12 15 0.019 1981 12 15 0.02 1981 12 15 0.026 1981 12 15 0.026 1983 12 15 0.006 1983 12 15 0.01 1983 12 15 0.01 1983 12 15 0.02 1983 12 15 0.01 1983 12 15 0.016 1983 12 15 0.021 1984 03 15 0.005 1984 03 15 0.005 1984 03 15 0.01 1984 03 15 0.01 1984 03 15 0.015 1984 03 15 0.015 1984 03 15 0.02 1984 03 15 0.02 1984 05 15 0.005 1984 05 15 0.006 1984 05 15 0.011 1984 05 15 0.01 1984 05 15 0.011 1984 05 15 0.01 1984 05 15 0.02 1984 05 15 0.015 1984 05 15 0.021 1984 05 15 0.01 1984 05 15 0.023 1985 07 15 0.01 1987 10 15 0.01 1987 10 15 0.02 1987 10 15 0.04 1988 05 15 0.02 1988 05 15 0.03 1988 05 15 0.045 1988 05 15 0.06 1988 05 15 0.25 1989 03 15 0.02 1989 03 15 0.04 1995 01 15 1.7 1995 01 15 2.1 1995 01 15 2.9 1995 04 15 0.24 1995 04 15 0.42 1995 04 15 0.52 1995 04 15 0.85 1995 04 15 1.2 1996 06 10 1.6 1996 08 14 1.76 1996 08 14 2 1996 09 15 2.5 1996 09 15 3.2 1997 08 13 2.1 1997 08 13 3.1 1997 08 13 4 1997 08 24 2.1 1997 08 24 3.1 1997 08 24 3.5 1997 08 24 4.3 1997 08 24 5.1 1997 09 05 7 1997 11 29 3.2 1997 11 29 3.2 1997 11 29 4.3 1997 11 29 4.3 1997 11 29 6.4 1997 11 29 6.4 1997 12 03 5.1 1997 12 03 6.4 1997 12 03 5.2 1997 12 03 7 1997 12 03 8.4 1998 01 16 6.4 1998 01 16 4.3 1998 01 16 6.4 1998 01 16 8.4 1998 02 03 5.2 1998 02 03 6.4 1998 04 02 5.1 1998 04 02 4.3 1998 04 02 6.4 1998 04 02 6.4 1998 04 04 5.2 1998 04 04 4.3 1998 04 04 6.4 1998 04 04 5.2 1998 04 04 9 1998 04 17 4.3 1998 04 17 5.2 1998 04 17 6.4 1998 05 02 6.4 1998 05 09 6.4 1998 05 11 3.2 1998 05 11 4.3 1998 05 11 5.2 1998 05 11 6.4 1998 06 06 5.7 1998 06 12 4.3 1998 06 12 6.4 1998 07 15 5.2 1998 07 31 5.1 1998 07 31 5.2 1998 07 31 6.4 1998 07 31 8.4 1998 07 31 6.4 1998 08 01 4 1998 08 06 5.1 1998 08 14 6.4 1998 08 26 6.4 1998 09 01 8.4 1998 09 01 6.8 1998 09 10 5.1 1998 10 01 6.4 1999 02 12 8 1999 02 26 8.4 1999 02 26 8 1999 02 27 19.2 1999 03 01 8.4 1999 03 01 10.2 1999 03 03 8.4 1999 03 03 10.2 1999 04 01 10.2 1999 04 01 8.4 1999 05 21 6.4 1999 05 27 10.2 1999 05 27 8.4 1999 05 27 17.3 1999 05 28 10 1999 07 21 8.4 1999 07 30 6.4 1999 09 25 10.2 1999 10 01 10.2 1999 10 01 13.6 1999 10 01 20 1999 10 01 27.3 1999 10 01 13.6 1999 12 01 20.5 1999 12 01 18.2 1999 12 01 10.2 1999 12 01 10.2 1999 12 01 13 1999 12 01 13 1999 12 01 20.4 1999 12 01 17.3 1999 12 01 27.3 1999 12 01 17.3 2000 02 01 10.2 2000 02 01 20.4 2000 02 01 13.6 2000 02 01 12.9 2000 02 01 13.6 2000 02 01 13 2000 02 01 17.3 2000 02 01 27.3 2000 02 01 17.3 2000 02 01 17.3 2000 02 01 20.4 2000 04 01 20.5 2000 04 01 15.2 2000 04 01 20 2000 04 01 15 2000 04 01 17.2 2000 04 01 28 2000 04 01 17.3 2000 04 01 20.3 2000 04 01 17 2000 04 01 27 2000 04 01 20.4 2000 04 01 36.5 2000 04 01 27 2000 04 01 20 2000 04 01 20 2000 04 01 30 2000 05 12 13.6 2000 05 12 30 2000 05 12 40 2000 06 02 15 2000 08 01 15 2000 08 01 30.5 2000 08 01 20 2000 08 19 40.9 2000 08 19 15.3 2000 08 19 30.7 2000 08 19 20.4 2000 08 19 30.7 2000 08 25 15 2000 08 25 40 2000 08 25 30 2000 10 27 30.7 2000 10 27 40.9 2000 10 27 61.4 2000 10 27 81.9 2000 10 27 30.7 2000 10 27 40.9 2000 11 01 30 2000 12 13 30 2000 12 20 80 2001 01 14 61 2001 01 14 82 2001 01 14 40 2001 04 25 40 2001 04 25 30 2001 04 25 40 2001 05 01 30 2001 05 01 82 2001 05 01 61 2001 05 01 40 2001 06 28 40 2001 07 06 60 2001 07 20 80 2001 08 31 60 2001 11 30 100 2001 12 01 40 2002 03 08 40 2002 07 27 40 2002 08 09 100 2002 08 16 60 2002 08 16 80 2002 08 23 40 2002 08 30 100 2002 09 06 120 2002 09 06 40 2002 09 20 40 2002 09 20 60 2003 10 11 40 2003 10 11 120 2003 11 29 80 2003 11 29 80 2003 11 29 120 2003 11 29 120 2003 11 29 80 2003 11 29 120 2004 03 27 160 2004 03 27 160 2004 03 27 250 2004 03 27 80 2004 03 27 80 2004 03 27 120 2004 03 27 120 2004 04 02 160 2004 04 16 250 # 2008-03-01: available 3.5 inch internal drives from newegg.com 2008 03 02 150 2008 03 02 250 2008 03 02 500 2008 03 02 1000 # 2009 02 02 2000 # this datapoint seems to be a mistake # 2009-01-03: 3.5" drives from newegg.com, not counting 2.5" server drive in 3.5" enclosure 2009 01 03 250 2009 01 03 500 2009 01 03 1500 2009 01 20 2000 2010 01 20 5000
Present plot source
[edit]Gnuplot script (outdated)
[edit]# gnuplot script # outdated see https://commons.wikimedia.org/wiki/File:Hard_drive_capacity_over_time.svg for the current version set log y set xra [1979:*] unset grid unset key set xlabel 'Year' set ylabel 'Capacity (GB)' set style data points set mytics 10 # set term png small size 600,400 xffffff x000000 xa0a0a0 x00bf00 xbf0000 x0000bf set term svg size 700,500 set output 'Hard_drive_capacity_over_time.svg' c0=0.00195 k=0.4487 cap(y) = c0*exp(k*(y-1980)) set style line 1 lt 1 lw 2 pt 2 ps 0.5 set style line 2 lt 3 lw 2 fit log(cap(x)) 'hdspace-e.dat' usi ($1+($2-1)/12.+($3-1)/365.):(log($4)) via k,c0 # leading space in format because year ticks are ambiguous # (year average or beginning or year?). set format x '%4.0f.1' plot \ 'hdspace-e.dat' usi ($1+($2-1)/12.+($3-1)/365.):4 ls 1, \ cap(x) ls 2
Gnuplot is available for all platforms.
Data (hdspace-e.dat) (outdated)
[edit]# outdated see https://commons.wikimedia.org/wiki/File:Hard_drive_capacity_over_time.svg for the current version # data 1956-2004 from http://ns1758.ca/winch/winchest.html 1956 00 15 0.005 1980 01 15 0.026 1980 07 15 0.018 1981 09 15 0.005 1981 11 15 0.005 1981 12 15 0.0063 1981 12 15 0.01 1981 12 15 0.01 1981 12 15 0.019 1981 12 15 0.02 1981 12 15 0.026 1981 12 15 0.026 1983 12 15 0.006 1983 12 15 0.01 1983 12 15 0.01 1983 12 15 0.02 1983 12 15 0.01 1983 12 15 0.016 1983 12 15 0.021 1984 03 15 0.005 1984 03 15 0.005 1984 03 15 0.01 1984 03 15 0.01 1984 03 15 0.015 1984 03 15 0.015 1984 03 15 0.02 1984 03 15 0.02 1984 05 15 0.005 1984 05 15 0.006 1984 05 15 0.011 1984 05 15 0.01 1984 05 15 0.011 1984 05 15 0.01 1984 05 15 0.02 1984 05 15 0.015 1984 05 15 0.021 1984 05 15 0.01 1984 05 15 0.023 1985 07 15 0.01 1987 10 15 0.01 1987 10 15 0.02 1987 10 15 0.04 1988 05 15 0.02 1988 05 15 0.03 1988 05 15 0.045 1988 05 15 0.06 1988 05 15 0.25 1989 03 15 0.02 1989 03 15 0.04 1995 01 15 1.7 1995 01 15 2.1 1995 01 15 2.9 1995 04 15 0.24 1995 04 15 0.42 1995 04 15 0.52 1995 04 15 0.85 1995 04 15 1.2 1996 06 10 1.6 1996 08 14 1.76 1996 08 14 2 1996 09 15 2.5 1996 09 15 3.2 1997 08 13 2.1 1997 08 13 3.1 1997 08 13 4 1997 08 24 2.1 1997 08 24 3.1 1997 08 24 3.5 1997 08 24 4.3 1997 08 24 5.1 1997 09 05 7 1997 11 29 3.2 1997 11 29 3.2 1997 11 29 4.3 1997 11 29 4.3 1997 11 29 6.4 1997 11 29 6.4 1997 12 03 5.1 1997 12 03 6.4 1997 12 03 5.2 1997 12 03 7 1997 12 03 8.4 1998 01 16 6.4 1998 01 16 4.3 1998 01 16 6.4 1998 01 16 8.4 1998 02 03 5.2 1998 02 03 6.4 1998 04 02 5.1 1998 04 02 4.3 1998 04 02 6.4 1998 04 02 6.4 1998 04 04 5.2 1998 04 04 4.3 1998 04 04 6.4 1998 04 04 5.2 1998 04 04 9 1998 04 17 4.3 1998 04 17 5.2 1998 04 17 6.4 1998 05 02 6.4 1998 05 09 6.4 1998 05 11 3.2 1998 05 11 4.3 1998 05 11 5.2 1998 05 11 6.4 1998 06 06 5.7 1998 06 12 4.3 1998 06 12 6.4 1998 07 15 5.2 1998 07 31 5.1 1998 07 31 5.2 1998 07 31 6.4 1998 07 31 8.4 1998 07 31 6.4 1998 08 01 4 1998 08 06 5.1 1998 08 14 6.4 1998 08 26 6.4 1998 09 01 8.4 1998 09 01 6.8 1998 09 10 5.1 1998 10 01 6.4 1999 02 12 8 1999 02 26 8.4 1999 02 26 8 1999 02 27 19.2 1999 03 01 8.4 1999 03 01 10.2 1999 03 03 8.4 1999 03 03 10.2 1999 04 01 10.2 1999 04 01 8.4 1999 05 21 6.4 1999 05 27 10.2 1999 05 27 8.4 1999 05 27 17.3 1999 05 28 10 1999 07 21 8.4 1999 07 30 6.4 1999 09 25 10.2 1999 10 01 10.2 1999 10 01 13.6 1999 10 01 20 1999 10 01 27.3 1999 10 01 13.6 1999 12 01 20.5 1999 12 01 18.2 1999 12 01 10.2 1999 12 01 10.2 1999 12 01 13 1999 12 01 13 1999 12 01 20.4 1999 12 01 17.3 1999 12 01 27.3 1999 12 01 17.3 2000 02 01 10.2 2000 02 01 20.4 2000 02 01 13.6 2000 02 01 12.9 2000 02 01 13.6 2000 02 01 13 2000 02 01 17.3 2000 02 01 27.3 2000 02 01 17.3 2000 02 01 17.3 2000 02 01 20.4 2000 04 01 20.5 2000 04 01 15.2 2000 04 01 20 2000 04 01 15 2000 04 01 17.2 2000 04 01 28 2000 04 01 17.3 2000 04 01 20.3 2000 04 01 17 2000 04 01 27 2000 04 01 20.4 2000 04 01 36.5 2000 04 01 27 2000 04 01 20 2000 04 01 20 2000 04 01 30 2000 05 12 13.6 2000 05 12 30 2000 05 12 40 2000 06 02 15 2000 08 01 15 2000 08 01 30.5 2000 08 01 20 2000 08 19 40.9 2000 08 19 15.3 2000 08 19 30.7 2000 08 19 20.4 2000 08 19 30.7 2000 08 25 15 2000 08 25 40 2000 08 25 30 2000 10 27 30.7 2000 10 27 40.9 2000 10 27 61.4 2000 10 27 81.9 2000 10 27 30.7 2000 10 27 40.9 2000 11 01 30 2000 12 13 30 2000 12 20 80 2001 01 14 61 2001 01 14 82 2001 01 14 40 2001 04 25 40 2001 04 25 30 2001 04 25 40 2001 05 01 30 2001 05 01 82 2001 05 01 61 2001 05 01 40 2001 06 28 40 2001 07 06 60 2001 07 20 80 2001 08 31 60 2001 11 30 100 2001 12 01 40 2002 03 08 40 2002 07 27 40 2002 08 09 100 2002 08 16 60 2002 08 16 80 2002 08 23 40 2002 08 30 100 2002 09 06 120 2002 09 06 40 2002 09 20 40 2002 09 20 60 2003 10 11 40 2003 10 11 120 2003 11 29 80 2003 11 29 80 2003 11 29 120 2003 11 29 120 2003 11 29 80 2003 11 29 120 2004 03 27 160 2004 03 27 160 2004 03 27 250 2004 03 27 80 2004 03 27 80 2004 03 27 120 2004 03 27 120 2004 04 02 160 2004 04 16 250 # 2005-2007 from update of http://ns1758.ca/winch/winchest.html 2005 01 07 160 2005 12 16 250 2007 10 16 250 2007 10 16 500 2007 10 16 1000 # 2008-03-01: available 3.5 inch internal drives from newegg.com 2008 03 02 150 2008 03 02 250 2008 03 02 500 2008 03 02 1000 # 2009 02 02 2000 # this datapoint seems to be a mistake # 2009-01-03: 3.5" drives from newegg.com, not counting 2.5" server drive in 3.5" enclosure 2009 01 03 250 2009 01 03 500 2009 01 03 1500 2009 01 20 2000 # 3TB: http://www.anandtech.com/show/3858/ (First 3TB Seagate) 2010 08 23 3000 # 4 TB: http://www.anandtech.com/show/4738/ (first 4TB Seagate) 2011 09 07 4000 # 2014-05-15: available 3.5 inch internal drives from newegg.com 2014 05 15 300 2014 05 15 500 2014 05 15 1000 2014 05 15 2000 2014 05 15 3000 2014 05 15 4000
highest advertised / highest produced products
[edit]@Tom94022: Can you please provide a dataset for
- highest advertised
- highes procude
HDs? I could update the Diagram. — Johannes Kalliauer - Talk | Contributions 07:51, 23 December 2018 (UTC)
- It should be highest produced, see source code of Wikipedia:de:Festplattenlaufwerk#Entwicklung_der_Speicherkapazitäten_der_verschiedenen_Baugrößen and older data is based on e.g. newegg.com, which is an online retail shop and the data for 1956-2004 is also based on retail, see the source for this on the Internet Archive. --MrBurns (talk) 21:17, 26 December 2018 (UTC)
- @MrBurns: I dissagree: There should be two lines, then everyone can interpet the data like they want. — Johannes Kalliauer - Talk | Contributions 23:39, 26 December 2018 (UTC)
- @JoKalliauer: Actually, at the moment, most data is based on retail. If we would add "highest advertised", someone would have to collect the data for that, at best starting from 1980. Also the current format of the image already contains a lot of dots (especially around the year 2000), so adding dots in a different color for "highest advertised" might make the image too cluttered. --MrBurns (talk) 23:46, 26 December 2018 (UTC)
- @MrBurns: I would reduce the dots to only the highest produced/advertised therefor it would be a reduction of points. (now there are often ~6 points at the same time, I would reduce it to maximal 2) — Johannes Kalliauer - Talk | Contributions 23:53, 26 December 2018 (UTC)
- @JoKalliauer: Ok, I think it is best like this. I think some manufacturers are still producing 160 GB 3.5" HDDs today, so just listing many available capacities doesn't say much about the advancement of technology. But I think in this case the straight line, which is an exponential fit, must also be recalculated, because it is more like an average of all the dots in the graph than just of the maximum produced. --MrBurns (talk) 23:59, 26 December 2018 (UTC)
- @MrBurns: I think the fit is done by
fit log(cap(x)) 'hdspace-e.dat' usi ($1+($2-1)/12.+($3-1)/365.):(log($4)) via k,c0
. — Johannes Kalliauer - Talk | Contributions 08:11, 27 December 2018 (UTC)- @JoKalliauer: Can you do it? I don't have gnuplot installed yet and I don't know how to use it so I would have to find a lot of time for this, which will probably not be possible in the next few days. --MrBurns (talk) 10:35, 27 December 2018 (UTC)
- @MrBurns: I think the fit is done by
- @JoKalliauer: Ok, I think it is best like this. I think some manufacturers are still producing 160 GB 3.5" HDDs today, so just listing many available capacities doesn't say much about the advancement of technology. But I think in this case the straight line, which is an exponential fit, must also be recalculated, because it is more like an average of all the dots in the graph than just of the maximum produced. --MrBurns (talk) 23:59, 26 December 2018 (UTC)
- @MrBurns: I would reduce the dots to only the highest produced/advertised therefor it would be a reduction of points. (now there are often ~6 points at the same time, I would reduce it to maximal 2) — Johannes Kalliauer - Talk | Contributions 23:53, 26 December 2018 (UTC)
- @JoKalliauer: Actually, at the moment, most data is based on retail. If we would add "highest advertised", someone would have to collect the data for that, at best starting from 1980. Also the current format of the image already contains a lot of dots (especially around the year 2000), so adding dots in a different color for "highest advertised" might make the image too cluttered. --MrBurns (talk) 23:46, 26 December 2018 (UTC)
- @MrBurns: I dissagree: There should be two lines, then everyone can interpet the data like they want. — Johannes Kalliauer - Talk | Contributions 23:39, 26 December 2018 (UTC)
New, current plot
[edit]Current data as of 2024.05.15
Both data and code can be found here on Github:
Let me also add it here just for the sake of keeping everything in wiki (sorry, no idea how to make this collapsible or anything else with proper formatting)
Date,Capacity,Comments
# IBM Ramac 350 first HDD @ 3.75MB
# data 1980-2004 from http://ns1758.ca/winch/winchest.html
1980-01-15,0.026
1980-07-15,0.018
1981-09-15,0.005
1981-11-15,0.005
1981-12-15,0.0063
1981-12-15,0.01
1981-12-15,0.01
1981-12-15,0.019
1981-12-15,0.02
1981-12-15,0.026
1981-12-15,0.026
1983-12-15,0.006
1983-12-15,0.01
1983-12-15,0.01
1983-12-15,0.02
1983-12-15,0.01
1983-12-15,0.016
1983-12-15,0.021
1984-03-15,0.005
1984-03-15,0.005
1984-03-15,0.01
1984-03-15,0.01
1984-03-15,0.015
1984-03-15,0.015
1984-03-15,0.02
1984-03-15,0.02
1984-05-15,0.005
1984-05-15,0.006
1984-05-15,0.011
1984-05-15,0.01
1984-05-15,0.011
1984-05-15,0.01
1984-05-15,0.02
1984-05-15,0.015
1984-05-15,0.021
1984-05-15,0.01
1984-05-15,0.023
1985-07-15,0.01
1987-10-15,0.01
1987-10-15,0.02
1987-10-15,0.04
1988-05-15,0.02
1988-05-15,0.03
1988-05-15,0.045
1988-05-15,0.06
1988-05-15,0.25
1989-03-15,0.02
1989-03-15,0.04
1995-01-15,1.7
1995-01-15,2.1
1995-01-15,2.9
1995-04-15,0.24
1995-04-15,0.42
1995-04-15,0.52
1995-04-15,0.85
1995-04-15,1.2
1996-06-10,1.6
1996-08-14,1.76
1996-08-14,2.0
1996-09-15,2.5
1996-09-15,3.2
1997-08-13,2.1
1997-08-13,3.1
1997-08-13,4.0
1997-08-24,2.1
1997-08-24,3.1
1997-08-24,3.5
1997-08-24,4.3
1997-08-24,5.1
1997-09-05,7.0
1997-11-29,3.2
1997-11-29,3.2
1997-11-29,4.3
1997-11-29,4.3
1997-11-29,6.4
1997-11-29,6.4
1997-12-03,5.1
1997-12-03,6.4
1997-12-03,5.2
1997-12-03,7.0
1997-12-03,8.4
1998-01-16,6.4
1998-01-16,4.3
1998-01-16,6.4
1998-01-16,8.4
1998-02-03,5.2
1998-02-03,6.4
1998-04-02,5.1
1998-04-02,4.3
1998-04-02,6.4
1998-04-02,6.4
1998-04-04,5.2
1998-04-04,4.3
1998-04-04,6.4
1998-04-04,5.2
1998-04-04,9.0
1998-04-17,4.3
1998-04-17,5.2
1998-04-17,6.4
1998-05-02,6.4
1998-05-09,6.4
1998-05-11,3.2
1998-05-11,4.3
1998-05-11,5.2
1998-05-11,6.4
1998-06-06,5.7
1998-06-12,4.3
1998-06-12,6.4
1998-07-15,5.2
1998-07-31,5.1
1998-07-31,5.2
1998-07-31,6.4
1998-07-31,8.4
1998-07-31,6.4
1998-08-01,4.0
1998-08-06,5.1
1998-08-14,6.4
1998-08-26,6.4
1998-09-01,8.4
1998-09-01,6.8
1998-09-10,5.1
1998-10-01,6.4
1999-02-12,8.0
1999-02-26,8.4
1999-02-26,8.0
1999-02-27,19.2
1999-03-01,8.4
1999-03-01,10.2
1999-03-03,8.4
1999-03-03,10.2
1999-04-01,10.2
1999-04-01,8.4
1999-05-21,6.4
1999-05-27,10.2
1999-05-27,8.4
1999-05-27,17.3
1999-05-28,10.0
1999-07-21,8.4
1999-07-30,6.4
1999-09-25,10.2
1999-10-01,10.2
1999-10-01,13.6
1999-10-01,20.0
1999-10-01,27.3
1999-10-01,13.6
1999-12-01,20.5
1999-12-01,18.2
1999-12-01,10.2
1999-12-01,10.2
1999-12-01,13.0
1999-12-01,13.0
1999-12-01,20.4
1999-12-01,17.3
1999-12-01,27.3
1999-12-01,17.3
2000-02-01,10.2
2000-02-01,20.4
2000-02-01,13.6
2000-02-01,12.9
2000-02-01,13.6
2000-02-01,13.0
2000-02-01,17.3
2000-02-01,27.3
2000-02-01,17.3
2000-02-01,17.3
2000-02-01,20.4
2000-04-01,20.5
2000-04-01,15.2
2000-04-01,20.0
2000-04-01,15.0
2000-04-01,17.2
2000-04-01,28.0
2000-04-01,17.3
2000-04-01,20.3
2000-04-01,17.0
2000-04-01,27.0
2000-04-01,20.4
2000-04-01,36.5
2000-04-01,27.0
2000-04-01,20.0
2000-04-01,20.0
2000-04-01,30.0
2000-05-12,13.6
2000-05-12,30.0
2000-05-12,40.0
2000-06-02,15.0
2000-08-01,15.0
2000-08-01,30.5
2000-08-01,20.0
2000-08-19,40.9
2000-08-19,15.3
2000-08-19,30.7
2000-08-19,20.4
2000-08-19,30.7
2000-08-25,15.0
2000-08-25,40.0
2000-08-25,30.0
2000-10-27,30.7
2000-10-27,40.9
2000-10-27,61.4
2000-10-27,81.9
2000-10-27,30.7
2000-10-27,40.9
2000-11-01,30.0
2000-12-13,30.0
2000-12-20,80.0
2001-01-14,61.0
2001-01-14,82.0
2001-01-14,40.0
2001-04-25,40.0
2001-04-25,30.0
2001-04-25,40.0
2001-05-01,30.0
2001-05-01,82.0
2001-05-01,61.0
2001-05-01,40.0
2001-06-28,40.0
2001-07-06,60.0
2001-07-20,80.0
2001-08-31,60.0
2001-11-30,100.0
2001-12-01,40.0
2002-03-08,40.0
2002-07-27,40.0
2002-08-09,100.0
2002-08-16,60.0
2002-08-16,80.0
2002-08-23,40.0
2002-08-30,100.0
2002-09-06,120.0
2002-09-06,40.0
2002-09-20,40.0
2002-09-20,60.0
2003-10-11,40.0
2003-10-11,120.0
2003-11-29,80.0
2003-11-29,80.0
2003-11-29,120.0
2003-11-29,120.0
2003-11-29,80.0
2003-11-29,120.0
2004-03-27,160.0
2004-03-27,160.0
2004-03-27,250.0
2004-03-27,80.0
2004-03-27,80.0
2004-03-27,120.0
2004-03-27,120.0
2004-04-02,160.0
2004-04-16,250.0
# 2005-2007 from update of http://ns1758.ca/winch/winchest.html
2005-01-07,160.0
2005-12-16,250.0
2007-10-16,250.0
2007-10-16,500.0
2007-10-16,1000.0
2008-03-02,150.0,"2008-03-01: available 3.5 inch internal drives from newegg.com"
2008-03-02,250.0
2008-03-02,500.0
2008-03-02,1000.0
2009-01-03,250.0,"2009 02 02 2000 # this datapoint seems to be a mistake"
2009-01-03,500.0,"2009-01-03 3.5 inch drives from newegg.com not counting 2.5 inch server drive in 3.5 inch enclosure"
2009-01-03,1500.0
2009-01-20,2000.0
2010-08-23,3000.0,"3TB: http://www.anandtech.com/show/3858/ (First 3TB Seagate)"
2011-09-07,4000.0,"4 TB: http://www.anandtech.com/show/4738/ (first 4TB Seagate)"
2014-05-15,300.0,"2014-05-15: available 3.5 inch internal drives from newegg.com"
2014-05-15,500.0
2014-05-15,1000.0
2014-05-15,2000.0
2014-05-15,3000.0
2014-05-15,4000.0
# Johannes Kalliauer updated with data from https://de.wikipedia.org/wiki/Festplattenlaufwerk#Entwicklung_der_Speicherkapazit%C3%A4ten_der_verschiedenen_Baugr%C3%B6%C3%9Fen
2014-10-31,8000.0,"HGST Ultrastar He8"; 3.5 inch; 7 platter;" with Helium"
2015-06-30,10000.0,"HGST Ultrastar Archive Ha10"; 3.5 inch; 7 platter;" with Helium"
2016-12-31,12000.0,"HGST Ultrastar He10"; 3.5 inch; 8 platter;" with Helium"
2017-12-31,14000.0,"Toshiba Enterprise MG07ACA"; 3.5 inch; 9 platter;" with Helium"
2018-12-26,14000.0
# Eheran updated all numbers/dates sourced from hardwareschotte.de dates these were on the marked
2019-05-26,16000.0,"Seagate IronWolf ST16000VN001 and ST16000NE000"
2020-05-15,18000.0,"Western Digital WD Gold WD181KRYZ"
2021-11-23,20000.0,"Western Digital Ultrastar DC HC560"
2022-07-26,22000.0,"Western Digital WD Gold WD221KRYZ"
2023-12-06,24000.0,"Western Digital WD Gold WD241KRYZ" — Preceding unsigned comment was added by 171.33.191.146 (talk) 12:18, 15 April 2024 (UTC)
# -*- coding: utf-8 -*-
"""
Created on Fri 05.05.2023
@author: Eheran
"""
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.ticker as ticker
from matplotlib.dates import YearLocator, DateFormatter
from datetime import datetime
import pandas as pd
file_name = 'HDD_dataframe.csv'
# Load the DataFrame from CSV file, ignore comments
data = pd.read_csv(file_name, parse_dates=['Date'], comment='#')
# Create the plot
fig, ax = plt.subplots()
# Choose x and y data, visualize as dots
ax.plot(data['Date'], data['Capacity'], 'o')
#print(data['Date'], data['Capacity'])
# Create regression line:
# Parameter from regression, without outliers in 2007/8/9 and higher weights on the last 20 years
A = -4.7
B = 15.5
C = -7400
D = 3200
E = -0.37
# Create a DataFrame with all the years from 1980.01.01 to 2025.01.01
years = pd.date_range(start='1980-01-01', end='2025-01-01', freq='YS')
df = pd.DataFrame({'date': years})
# Calculate the number of days since the first date (1980.01.01)
df['days_since'] = (df['date'] - df['date'].iloc[0]).dt.days
# Apply the formula (called ExtrValCum(a,b,c,d)) to the 'days_since' column
# and create a new column with the results
df['Capacity_regression'] = np.exp(A + B * np.exp(-np.exp(-((df['days_since'] - D * E + C) / D))))
# plot the regression result, visualize as blue, dashed line
ax.plot(df['date'], df['Capacity_regression'], 'b--')
# x-axis fortmatting
# Display years only, as YYYY format
years = YearLocator()
yearsFmt = DateFormatter('%Y')
ax.xaxis.set_major_formatter(yearsFmt)
# Display x and y-ticks on both top and bottom / left and right
ax.tick_params(axis='x', which='both', top=True, bottom=True)
ax.tick_params(axis='y', which='both', left=True, right=True)
# Set the x-axis start and end values to 1980 and 2025
ax.set_xlim(datetime(1980, 1, 1), datetime(2025, 1, 1))
# Creaty a copy of the axis to have a second spine on the rigt side of the plot
ax2 = ax.twinx()
# y-axis fortmatting
# Set the y-axis to log10-scale, do the same for the 2. y-axis
ax.set_yscale('log')
ax2.set_yscale('log')
# Configure y-axis ticks of both y-axis
ax.yaxis.set_major_locator(ticker.LogLocator(base=10.0, numticks=9))
ax.yaxis.set_minor_locator(ticker.LogLocator(base=10.0, subs=(2, 3, 4, 5, 6, 7, 8, 9), numticks=10))
ax2.yaxis.set_major_locator(ticker.LogLocator(base=10.0, numticks=9))
ax2.yaxis.set_minor_locator(ticker.LogLocator(base=10.0, subs=(2, 3, 4, 5, 6, 7, 8, 9), numticks=10))
# Replace the existing y-axis formatter with the custom one
# We want 1 MB... 100 TB instead of 0.001 GB.... 100000 GB
def custom_y_axis_formatter(x, pos):
if x < 1:
return f"{x * 1e3:g} MB"
elif x < 1e3:
return f"{x / 1e0:g} GB"
else:
return f"{x / 1e3:g} TB"
ax.yaxis.set_major_formatter(ticker.FuncFormatter(custom_y_axis_formatter))
ax2.yaxis.set_major_formatter(ticker.FuncFormatter(custom_y_axis_formatter))
ax.set_ylim(0.001, 1e5) # =0.001 GB to 100 TB, the underlying value is still in GB
ax2.set_ylim(ax.get_ylim())
# Add gridlines to the major tick markers of both x and y axis
ax.grid(which='major')
# save file as .svg
plt.savefig('HDD - capacity over time.svg')
plt.show() Eheran (talk) 13:52, 6 December 2023 (UTC)