Dessinez des graphiques dans Julia ... Laissez les graphiques à Python

"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. Eh bien, je voulais utiliser un graphe 3D (OpenGL), et j'ai pensé qu'il serait difficile de porter tout l'exemple de code de PyQtGraph à Julia. ** D'accord, changement de politique ... Laissons tous les graphiques à Python! ** **

En conséquence, il est devenu le code source à la fin de la phrase.

test3.gif

En laissant le traitement des graphes ** au code Python **, le développement est devenu super facile! Après cela, si Julia peut créer un échantillon qui effectue un tel traitement de calcul ... ** Ensuite, essayons un graphique 3D en utilisant OpenGL! ** **

Remarque: veuillez vous référer à "Dessiner un graphe dans le langage de programmation Julia" pour la construction de l'environnement.

text:Plotting.jl(C:\julia-0.2.1-win32\Enregistrer dans la corbeille)


using PyCall

@pyimport Plotting
Plotting.my_graph_set([1, 2, 3, 4, 5, 10, 20, 5])
Plotting.my_graph_run()

python:Plotting.py(C:\julia-0.2.1-win32\Enregistrer dans la corbeille)


# -*- coding: utf-8 -*-
"""
This example demonstrates many of the 2D plotting capabilities
in pyqtgraph. All of the plots may be panned/scaled by dragging with 
the left/right mouse buttons. Right click on any plot to show a context menu.
"""

from pyqtgraph.Qt import QtGui, QtCore
import numpy as np
import pyqtgraph as pg

plot_data_1 = []

def my_graph_set(plot_data):
	global plot_data_1
	plot_data_1 = plot_data

def my_graph_run():
	global plot_data_1

	app = QtGui.QApplication([])

	win = pg.GraphicsWindow(title="Basic plotting examples")
	win.resize(800,600)
	win.setWindowTitle('pyqtgraph example: Plotting')

	# Enable antialiasing for prettier plots
	pg.setConfigOptions(antialias=True)

	p1 = win.addPlot(title="Basic array plotting", y=plot_data_1)

	p2 = win.addPlot(title="Multiple curves")
	p2.plot(np.random.normal(size=100), pen=(255,0,0))
	p2.plot(np.random.normal(size=100)+5, pen=(0,255,0))
	p2.plot(np.random.normal(size=100)+10, pen=(0,0,255))

	p3 = win.addPlot(title="Drawing with points")
	p3.plot(np.random.normal(size=100), pen=(200,200,200), symbolBrush=(255,0,0), symbolPen='w')

	win.nextRow()

	p4 = win.addPlot(title="Parametric, grid enabled")
	x = np.cos(np.linspace(0, 2*np.pi, 1000))
	y = np.sin(np.linspace(0, 4*np.pi, 1000))
	p4.plot(x, y)
	p4.showGrid(x=True, y=True)

	p5 = win.addPlot(title="Scatter plot, axis labels, log scale")
	x = np.random.normal(size=1000) * 1e-5
	y = x*1000 + 0.005 * np.random.normal(size=1000)
	y -= y.min()-1.0
	mask = x > 1e-15
	x = x[mask]
	y = y[mask]
	p5.plot(x, y, pen=None, symbol='t', symbolPen=None, symbolSize=10, symbolBrush=(100, 100, 255, 50))
	p5.setLabel('left', "Y Axis", units='A')
	p5.setLabel('bottom', "Y Axis", units='s')
	p5.setLogMode(x=True, y=False)

	global curve, data, ptr, p6
	p6 = win.addPlot(title="Updating plot")
	curve = p6.plot(pen='y')
	data = np.random.normal(size=(10,1000))
	ptr = 0
	def update():
		global curve, data, ptr, p6
		curve.setData(data[ptr%10])
		if ptr == 0:
			p6.enableAutoRange('xy', False)  ## stop auto-scaling after the first data set is plotted
		ptr += 1
	timer = QtCore.QTimer()
	timer.timeout.connect(update)
	timer.start(50)

	win.nextRow()

	p7 = win.addPlot(title="Filled plot, axis disabled")
	y = np.sin(np.linspace(0, 10, 1000)) + np.random.normal(size=1000, scale=0.1)
	p7.plot(y, fillLevel=-0.3, brush=(50,50,200,100))
	p7.showAxis('bottom', False)

	x2 = np.linspace(-100, 100, 1000)
	data2 = np.sin(x2) / x2
	p8 = win.addPlot(title="Region Selection")
	p8.plot(data2, pen=(255,255,255,200))
	lr = pg.LinearRegionItem([400,700])
	lr.setZValue(-10)
	p8.addItem(lr)

	p9 = win.addPlot(title="Zoom on selected region")
	p9.plot(data2)
	def updatePlot():
	    p9.setXRange(*lr.getRegion(), padding=0)
	def updateRegion():
	    lr.setRegion(p9.getViewBox().viewRange()[0])
	lr.sigRegionChanged.connect(updatePlot)
	p9.sigXRangeChanged.connect(updateRegion)
	updatePlot()

	QtGui.QApplication.instance().exec_()

Recommended Posts

Dessinez des graphiques dans Julia ... Laissez les graphiques à Python
Dessiner des graphiques dans le langage de programmation Julia
Laissez le traitement gênant à Python
Dans la commande python, python pointe vers python3.8
Sortie "Dessiner fougère par programmation" dans le processus de dessin en Python
Comment utiliser la bibliothèque C en Python
[Python] Comment dessiner plusieurs graphiques avec Matplotlib
Pour remplacer dynamiquement la méthode suivante en python
Conseils pour rédiger un aplatissement concis en python
Comment obtenir les fichiers dans le dossier [Python]
[Python] Comment dessiner un histogramme avec Matplotlib
Dessiner un graphique avec python
Je veux afficher la progression en Python!
J'ai essayé de représenter graphiquement les packages installés en Python
Comment obtenir le nom de la variable lui-même en python
Comment obtenir le nombre de chiffres en Python
Comment connaître le répertoire actuel en Python dans Blender
Comprenez attentivement la distribution exponentielle et dessinez en Python
Convertissez l'image au format .zip en PDF avec Python
Comprendre attentivement la distribution de Poisson et dessiner en Python
Je veux écrire en Python! (3) Utiliser des simulacres
Comment utiliser le modèle appris dans Lobe en Python
[Python] Comment afficher les valeurs de liste dans l'ordre
Pour faire l'équivalent de Ruby ObjectSpace._id2ref en Python
Je veux utiliser le jeu de données R avec python
Python Open CV a essayé d'afficher l'image sous forme de texte.
Pour vider stdout en Python
Dessiner une forme d'onde mp3 en Python
Trouver des erreurs en Python
Connectez-vous au site Web en Python
Dessiner "Dessiner une fougère par programme" en Python
Dessiner la fonction Yin en python
Parler avec Python [synthèse vocale]
Comment développer en Python
Dessinez un cœur en Python
Publier sur Slack en Python
[python] Comment vérifier si la clé existe dans le dictionnaire
Comment déboguer une bibliothèque Python standard dans Visual Studio
[python] Comment utiliser Matplotlib, une bibliothèque pour dessiner des graphiques
Comment utiliser la méthode __call__ dans la classe Python
Différentes façons de calculer la similitude entre les données avec python
Comment obtenir la dernière (dernière) valeur d'une liste en Python
J'ai essayé d'implémenter la fonction d'envoi de courrier en Python
Dessinez des ondes sinusoïdales avec Blender Python
Programmation pour combattre dans le monde ~ 5-1
Programmation pour combattre dans le monde ~ 5-5,5-6
Programmer pour combattre dans le monde 5-3
Obtenir l'API arXiv en Python
Convertir Markdown en PDF en Python
Python dans le navigateur: la recommandation de Brython
Comment collecter des images en Python
Frappez l'API Sesami en Python
Dessinez des nœuds de manière interactive avec Plotly (Python)
Obtenez le chemin du bureau en Python
Comment utiliser SQLite en Python
Programmation pour combattre dans le monde - Chapitre 4
Obtenez le chemin du script en Python
Implémenter le modèle Singleton en Python
Comment obtenir la version Python
Essayez de calculer Trace en Python