"Dessiner un graphe dans le langage de programmation Julia" J'ai réussi à déplacer l'échantillon pour le moment, mais les données créées par mon propre programme (en langage Julia) J'ai décidé de découvrir comment dessiner un graphique en utilisant.
Cette fois, en référence à "Technique pratique du langage Julia apprise à partir de" Boob curved surface "", "Boobs" in 3D space J'ai fait un échantillon pour dessiner une "surface courbe". Comme d'habitude, le résultat du calcul obtenu par Julia est affiché sous forme de graphique dans PyQtGraph. (Veuillez créer un environnement et le déplacer)
Remarque: Pour la construction de l'environnement, reportez-vous à "Dessiner des graphes dans le langage de programmation Julia".
↑ Faites glisser avec la souris ou appuyez sur la touche curseur pour faire pivoter le graphique 3D. Vous pouvez effectuer un zoom avant / arrière en tournant la molette de la souris.
jl:Oppai.jl(C:\julia-0.2.1-win32\Enregistrer dans la corbeille)
# -*- coding: utf-8 -*-
function bust(x,y)
1/8* (6*exp(-((2/3*abs(x) - 1)^2 + (2/3 *y)^2) - 1/3*(2/3*y + 1/2)^3)+ 2/3 *exp(-2.818^11*((abs(2/3*x) - 1)^2+ (2/3 *y)^2)^2) + 2/3*y - (2/3*x)^4)
end
nx = 100
ny = 51
x = linspace(-3, 3, nx)
y = linspace(-3, 3, ny)
z = zeros(Float64, length(y), length(x))
for iy = 1:length(y)
for ix = 1:length(x)
z[iy, ix] = bust(x[ix], y[iy])
end
end
using PyCall
@pyimport Oppai
Oppai.graph_run(x, y, z, 10)
python:Oppai.py(C:\julia-0.2.1-win32\Enregistrer dans la corbeille)
# -*- coding: utf-8 -*-
from pyqtgraph.Qt import QtCore, QtGui
import pyqtgraph.opengl as gl
import pyqtgraph as pg
import numpy as np
def graph_run(plot_data_x, plot_data_y, plot_data_z, distance):
app = QtGui.QApplication([])
w = gl.GLViewWidget()
w.resize(600,400)
w.opts['distance'] = distance
w.show()
w.setWindowTitle(u'Julia+Exemple PyQtGraph')
x = plot_data_x
y = plot_data_y
for i in range(len(y)):
yi = [y[i]]*len(x)
z = plot_data_z[i,:]
pts = np.vstack([x,yi,z]).transpose()
plt = gl.GLLinePlotItem(pos=pts, color=pg.glColor((i,len(y)*1.3)), width=(i+1)/10., antialias=True)
w.addItem(plt)
app.exec_()
Recommended Posts