Use real test data for dummy 2
This commit is contained in:
parent
689e5550ff
commit
bf63612bbc
|
@ -1,32 +1,18 @@
|
||||||
require 'RMagick'
|
require 'RMagick'
|
||||||
|
require 'json'
|
||||||
|
|
||||||
include Magick
|
include Magick
|
||||||
|
|
||||||
# Create a dummy list including 300 cores, with a load between 0 and 100
|
data = JSON::load(File.new('load_values.json', 'r'))
|
||||||
numberGenerator = Random.new()
|
weigthOfOneCore = 127.5/data[0].length
|
||||||
|
|
||||||
# heatmap over 5 minutes by one measure per 5 sec
|
# prepare data
|
||||||
dummyList = Array.new(60) do
|
dummyList = Array.new()
|
||||||
# 16 dummy cores
|
|
||||||
# lets say 10 cores have a load up to 10%
|
|
||||||
# 4 have a load up to 30%
|
|
||||||
# and 2 have a load up to 100%
|
|
||||||
j = 0
|
|
||||||
cores = Array.new(16) do
|
|
||||||
j = j + 1
|
|
||||||
case
|
|
||||||
when j <= 10
|
|
||||||
numberGenerator.rand(10)
|
|
||||||
when (j >= 11 and j <= 14)
|
|
||||||
numberGenerator.rand(30)
|
|
||||||
when (j >= 15 and j <= 16)
|
|
||||||
numberGenerator.rand(100)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
|
data.each do |cores|
|
||||||
# every 10 load percent one heatpoint
|
# every 10 load percent one heatpoint
|
||||||
i = 0
|
i = 0
|
||||||
Array.new(10) do
|
dummyList << Array.new(10) do
|
||||||
amount = cores.select { |core| core >= i and core < (i+10)}.length
|
amount = cores.select { |core| core >= i and core < (i+10)}.length
|
||||||
i = i + 10
|
i = i + 10
|
||||||
amount
|
amount
|
||||||
|
@ -35,8 +21,11 @@ end
|
||||||
|
|
||||||
# puts dummyList.inspect
|
# puts dummyList.inspect
|
||||||
|
|
||||||
|
# image size
|
||||||
|
x = dummyList.length*15
|
||||||
|
|
||||||
# start drawing the damn thing
|
# start drawing the damn thing
|
||||||
loadImg = Image.new(900,150) { self.background_color = "white" }
|
loadImg = Image.new(x,150) { self.background_color = "white" }
|
||||||
|
|
||||||
i = 0
|
i = 0
|
||||||
dummyList.each do |point|
|
dummyList.each do |point|
|
||||||
|
@ -46,8 +35,7 @@ dummyList.each do |point|
|
||||||
# draw a red rectangle on the white background
|
# draw a red rectangle on the white background
|
||||||
core = Draw.new
|
core = Draw.new
|
||||||
|
|
||||||
weightedCores = 0
|
weightedCores = k**0.8*cores*weigthOfOneCore
|
||||||
weightedCores = k**0.8*cores*7.96875 if cores != 0
|
|
||||||
weightedCores = 127.5 if weightedCores > 127.5
|
weightedCores = 127.5 if weightedCores > 127.5
|
||||||
l = (255-weightedCores).round
|
l = (255-weightedCores).round
|
||||||
core.fill(Pixel.from_hsla(0, 255, l, 1).to_color)
|
core.fill(Pixel.from_hsla(0, 255, l, 1).to_color)
|
||||||
|
@ -60,3 +48,4 @@ dummyList.each do |point|
|
||||||
end
|
end
|
||||||
|
|
||||||
loadImg.display
|
loadImg.display
|
||||||
|
# loadImg.write('loadimage2.png')
|
||||||
|
|
Loading…
Reference in New Issue