Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

setting point sizes when using Gadfly in Julia

In my attempts to practice Julia, I've made a program which draws a bifurcation diagram. My code is as follows:

function bifur(x0,y0,a=1.3,b=0.4,n=1000,m=10000)
    i,x,y=1,x0,y0
    while i < n && abs(x) < m
        x,y = a - x^2 + y, b * x
        i += 1
    end
    if abs(x) < m
        return x
    else
        return 1000
    end
end
la = Float64[];
lx = Float64[];
for a=0:400
    for j = 1:1000
        x0 = rand()
        y0 = rand()
        x = bifur(x0,y0,a/100)
        if x != 1000
            push!(la,a/100) 
            push!(lx,x)
        end
    end
end
using Gadfly
myplot = Gadfly.plot( x=la, y=lx , Scale.x_discrete, Scale.y_continuous, Geom.point)
draw(PNG("myplot.png",10inch,8inch),myplot)

The output I get is this image: enter image description here

In order to make my plot look more like this: enter image description here I need to be able to set point sizes to as small as one pixel. Then by increasing the iteration length I should be able to get a better bifurcation diagram. Does anyone know how to set the point sizes in Gadfly diagrams in Julia?

like image 312
Ali Avatar asked Sep 03 '14 09:09

Ali


1 Answers

[Just to encapsulate the comments as an answer...]

Gadfly's Theme defaults can be changed. In particular, point_size is probably what you are looking for.

For changing the automatic plot scale/range settings, have a look at Gadfly's Scale params.

like image 179
3 revs, 2 users 83% Avatar answered Oct 11 '22 12:10

3 revs, 2 users 83%