2017-05-31 4 views
2

J'essaye de tracer une fonction évoluant en temps réel avec Julia.traçage en temps réel avec Julia

Pour cela, j'ai vu ce paquet GR pourrait être utilisé dans Julia, lorsque je tente d'appliquer exactement l'exemple donné here:

import GR 
GR.inline("mov") 
x = [0:0.01:2*pi] 

    for i = 1:200 
    GR.plot(x, sin.(x + i/10.0)) 
    end 

GR.show() 

Je reçois le message d'erreur suivant lors de l'exécution de la partie de la boucle:

prévu réel ou Complexe

dans # plot_args # 12 (:: Symbole :: Fonction, :: Tuple {{tableau FloatRange {} Float64, 1}, Array {{tableau} Float64,1, 1}}) à/Utilisateurs/myname/.julia/v0.5/GR/src/jlgr.jl: 936 ....

J'ai regardé un peu sur Internet et a trouvé this où quelqu'un semble avoir un problème similaire mais je vraiment ne comprends pas les réponses et que dois-je faire pour le faire fonctionner.

Je peux aussi simplement trouver un autre moyen de tracer en temps réel (dans une boucle).

Quelqu'un peut-il aider avec cela s'il vous plaît?

Merci par avance

+0

Qu'est-ce que 'x'? - 20 caractères –

+0

Voir aussi https://discourse.julialang.org/t/juno-and-interactive-plot/3989/2 –

+0

Désolé. Je viens d'écrire l'étape du code fourni dans le lien 1 qui ne fonctionne pas. – user5035672

Répondre

2

Voici une solution qui utilise pour tracer à Parcelles GR. Je suis sûr que cela peut être fait directement dans GR, mais je ne suis pas sûr de ce qui ne va pas dans votre exemple.

using Plots 
gr(show = true) # in IJulia this would be: gr(show = :ijulia) 
x = 0:0.01:2*pi 
for i in 1:200 
    display(plot(x, sin.(x + i/10.0))) 
end 

Notez que cet exemple est en temps réel (selon la question) et peut donc être un peu lent. Dans le code de l'exemple, un gif est créé à la place, qui est ensuite affiché dans ijulia.

+0

A en juger par la capture d'écran fournie, j'ai l'impression qu'il essaie de le faire spécifiquement dans IJulia plutôt que dans le REPL générique. –

+1

Bon point, j'ai ajouté une note à ce sujet –

+0

Cela fonctionne. Je pense que 'gr (show =: ijulia)' était nécessaire! Merci – user5035672