A fun and rather unusual plot!
' *** fish5.bas 8/02/2013 *** nomainwin UpperLeftX = 10 UpperLeftY = 10 WindowWidth = 680 WindowHeight = 556 graphicbox #w.gb, 10, 10, 656, 502 open "Fish graph" for window as #w #w "trapclose [quit]" #w.gb "down ; fill black" loadbmp "scr", "repeat.bmp" #w.gb "drawbmp scr 250 2 ; flush" unloadbmp "scr" dim colour$( 255) call getColValues #w.gb "size 6" col$ ="128 128 128" for x =-2 to 11 step 4 *13 /640 for y =-4 to 4 step 4 *8 /480 f = 25 *x^6_ + 75 *x^4 *y^2_ + 75 *x^2 *y^4_ + 25 *y^6_ - 650 *x^5_ - 50 *x^4 *y_ - 800 *x^3 *y^2_ - 100 *x^2 *y^3_ - 150 *x *y^4_ - 50 *y^5_ + 5621 *x^4_ + 500 *x^3 *y_ - 758 *x^2 *y^2_ - 500 *x *y^3_ + 1621 *y^4_ -16210 *x^3_ +16210 *x *y^2 f =abs( f) lf =max( -1, 20 *log( f)) +1 index =min( 255, lf) print index col$ =colour$( index) #w.gb "color "; col$ #w.gb "set "; 10 +( x +2) /13 *640; " "; 72 +( 6 -( y +3)) /8 *480 next y scan next x #w.gb "flush" wait [quit] close #w end Function KCGetPixel$( x, y) 'x, y = window coordinates Thanks KCDan!! #w.gb "Getbmp pixel "; 250 +x; " "; 2 +y; " 1 1" 'A 1x1 bitmap, contains exactly 1 pixel #w.gb "color black ; set "; 250 +x; " "; 2 +y Bmpsave "pixel", "kcGetPixelData.datkc" 'Save that one pixel as a temporary bmp file Open "kcGetPixelData.datkc" for Binary as #kc 'Open that one pixel bmp file as a binary file Seek #kc, 66 'Blue Info b =Asc( Input$( #kc, 1)) 'Blue Seek #kc, 67 'Green Info g =Asc( Input$( #kc, 1)) 'Green Seek #kc, 68 'Red Info r =Asc( Input$( #kc, 1)) 'Red Close #kc Kill "kcGetPixelData.datkc" 'Delete the temporary bmp file KCGetPixel$ =r; " "; g; " "; b 'Place the values in a string End Function sub getColValues for v =1 to 256 colour$( v -1) =KCGetPixel$( 256 -v, 5) next v end sub