Maison > développement back-end > Tutoriel Python > Comment utiliser Python pour dessiner des tableaux académiques

Comment utiliser Python pour dessiner des tableaux académiques

高洛峰
Libérer: 2017-03-08 09:41:07
original
2177 Les gens l'ont consulté

Il existe différentes formes de graphiques dans le document. Les outils de traitement couramment utilisés incluent Excel, MATLAB et Python. La méthode d'auto-traitement d'Excel présente deux défauts :

. 1. Lorsqu'il y a trop de données, il est facile de « lever les yeux au ciel » dans Excel

2 Lorsque vous devez utiliser la fonction de sous-tracé ou le traitement par lots ; plus pratique d'utiliser MATLAB ou Python ;

3. La beauté des diagrammes traités par Excel est loin du standard des diagrammes papier. En comparant les fonctions de tracé de MATLAB et de Python, Python présente un léger avantage du point de vue esthétique du graphique. Ce qui suit présentera brièvement le processus d'extraction de données d'Excel vers Python et l'utilisation de la bibliothèque matplotlib de Python pour dessiner des graphiques.

1. Comment importer des données d'Excel vers Python :

Cette section présente principalement comment importer des données depuis Excel dans Python Importez les données dans python (les données originales peuvent être dans un fichier .txt ou .out, et les données sont relativement compliquées. Vous pouvez d'abord utiliser MATLAB ou python pour traiter les données et les enregistrer dans Excel, y compris certaines. calculs simples, arrangements, etc., pour faciliter le dessin ultérieur, ou utiliser directement python pour extraire les données au format .txt (pas d'introduction détaillée ici), la méthode principale consiste à utiliser la bibliothèque xlrd de python, le processus est le suivant :

# 导入xlrd库
import xlrd
# 读取指定Excel文件(此处为excel_dir)中的数据
data=xlrd.open_workbook(excel_dir)
# 读取指定data中某sheet(此处命名为sheetname)中的数据
table=data.sheet_by_name(sheetname)
#读取table中某一列的数据
needs=table.col_values(0)
Copier après la connexion

Parmi eux Plusieurs points qui doivent être expliqués :

1 Comment définir excel_dir et sheetname ?

excel_dir doit être écrit sous le format d'une chaîne (c'est-à-dire ' ' ou " "), et doit se terminer par un suffixe Excel tel que .xls ou .xlsx, comme lire le nom sur le bureau de l'administrateur. Le fichier result.xls peut être écrit comme suit :

excel_dir = 'C:\Users\Administrator\Desktop\result.xls'data=xlrd.open_workbook(excel_dir)
Copier après la connexion

La méthode de définition du nom de la feuille est la comme ci-dessus. De plus, la feuille a également une méthode de lecture via la séquence d'index :

table = data.sheets()[0]       #通过索引顺序获取
table = data.sheet_by_index(0) #通过索引顺序获取
Copier après la connexion

2. Comment lire les données. d'une certaine cellule ou ligne ?

Le processus illustré consiste à lire les données d'une certaine colonne dans une feuille. De même, les données d'une certaine ligne sont :

.
table.col_values(i)
Copier après la connexion

La commande pour lire certaines données de cellule est :

table.cell(i,j).value
Copier après la connexion

3. Lire Lors de la récupération de données à partir d'une certaine ligne ou colonne, quelle est la plage des données ?

Par exemple : lorsque le tableau dans une feuille est le suivant, les données du tableau 4×3 seront lues.

Comment utiliser Python pour dessiner des tableaux académiques

C'est-à-dire que si vous souhaitez lire les données de la colonne B, le code doit être écrit comme

table.col_values(1)
Copier après la connexion

Remarque : Python commence à compter à partir de 0, le numéro de colonne doit donc être 1. Les informations incluses dans cette fois c'est : [u'',u'',4,u'']

Et notez que les dimensions du tableau sont déterminées par chaque feuille, et si un tableau excel a plusieurs feuilles, la longueur de la liste peut être différente.

4. Que faire si vous souhaitez obtenir 2 à 5 lignes d'une certaine colonne ?

table.col_values(i)[1:5]
Copier après la connexion

5. Si vous souhaitez obtenir le dernier numéro, comment devez-vous écrire le code ?

Étant donné que le type de données de chaque ligne/colonne peut être différent, il peut arriver que la première colonne ne contienne que 4 nombres, tandis que la deuxième colonne comporte 9 nombres et que la colonne la plus élevée ait 100 nombres Dans des situations similaires, si vous utilisez directement la commande pour arrondir la colonne, u'' sera mélangé dans la liste, provoquant des erreurs dans le prochain dessin. Dans ce cas, vous pouvez utiliser la méthode suivante : <🎜. >

a_col=table.col_values(i)
a=a_col[0,a_col.index(u&#39;&#39;)]
Copier après la connexion

Mais veuillez noter que cette commande ne peut pas être utilisée sur les colonnes qui contrôlent le nombre de lignes, sinon une erreur sera signalée. Vous pouvez écrire. d'autres déclarations de jugement pour déterminer s'il convient d'utiliser cette commande.

2. Comment utiliser Python pour dessiner :

Nous présentons ici la méthode de dessin à l'aide de la bibliothèque matplotlib Vous devez d'abord importer la bibliothèque matplotlib :

import numpy as npimport matplotlib.pyplot as plt
Copier après la connexion

Le dessin. la méthode est très simple, en gros Le processus est le suivant :

# 绘图命令,1为图号,并设置figsize
fig_drift= plt.figure(1,figsize=(12,4))
# 设置数据在x轴和y轴的坐标,以及颜色、标签等属性,此处用了两组数据
plt.plot(drift[0], story,"g-",label=&#39;$Damped$&#39;)
plt.plot(drift[1], story,"r-.",label=&#39;$Undamped$&#39;)
# 设置x轴和y轴的标签
plt.xlabel(&#39;Drift&#39;)
plt.ylabel(&#39;Storey&#39;)
# 选择显示数据组标签
plt.legend()
# 设置x轴和y轴的间隔及范围
plt.xticks((0.000,0.005,0.010,0.015))
plt.yticks(range(1,5,1))
# 设置图名
plt.title(&#39;minor&#39;)
Copier après la connexion


Quelques points qui doivent être expliqués :

1. Comment dessiner plusieurs images ?

C'est très simple, juste après avoir défini le nom du numéro de l'image, insérez :

ax2 = plt.subplot(132)
plt.sca(ax2)
Copier après la connexion

后面的命令与前述一致,值得一提的是,plt.subplot(131)指的是绘制一个含有1×3子图的图,且ax1代表的是第2张图,而plt.sca(ax2)表示选择该子图。

2.设置x轴、y轴以及其他命令如何判断是赋予哪张图的属性呢?

matplotlib会直接将该属性赋予上一plot对象。

3.如何绘制散点图?

把pl.plot(x, y)改成pl.plot(x, y, 'o')即可。

4.其他一些设置参数:

# 设置x轴和y轴的上下限
pl.xlim(i, j)
pl.ylim(m,n)
# 显示图
pl.show()
# 保存图,自动存为png格式
plt.savefig(dir+name.png,dpi=600)
Copier après la connexion

除此之外还支持设置x轴(y轴)坐标显示,绘制饼状图、直方图等功能,在此不再一一介绍。

 

三.说点题外话:

曾经看过一句话:“世界上没有烂语言,只有写语言的烂人”。

每种语言各自有其优势,也有其劣势,在此不做过多评价。如何利用语言实现绘图或达到更多目标,在于我们如何选择。恰到好处地使用for或def、class等语句,能使一段代码如虎添翼,写在这里,作为给自己的提醒:遇到问题先明确方法、形成体系再进入编写,不要盲目地将看似正确的语言进行强行拼凑,返工率极高。

更多Comment utiliser Python pour dessiner des tableaux académiques相关文章请关注PHP中文网!

 


Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal