小编use*_*081的帖子

Matplotlib散点图传奇

我创建了一个4D散点图来表示特定区域的不同温度.创建图例时,图例会显示正确的符号和颜色,但会在其中添加一条线.我正在使用的代码是:

colors=['b', 'c', 'y', 'm', 'r']
lo = plt.Line2D(range(10), range(10), marker='x', color=colors[0])
ll = plt.Line2D(range(10), range(10), marker='o', color=colors[0])
l = plt.Line2D(range(10), range(10), marker='o',color=colors[1])
a = plt.Line2D(range(10), range(10), marker='o',color=colors[2])
h = plt.Line2D(range(10), range(10), marker='o',color=colors[3])
hh = plt.Line2D(range(10), range(10), marker='o',color=colors[4])
ho = plt.Line2D(range(10), range(10), marker='x', color=colors[4])
plt.legend((lo,ll,l,a, h, hh, ho),('Low Outlier', 'LoLo','Lo', 'Average', 'Hi', 'HiHi', 'High Outlier'),numpoints=1, loc='lower left', ncol=3, fontsize=8)
Run Code Online (Sandbox Code Playgroud)

我试过换Line2DScatterscatter.Scatter返回错误并scatter更改了图表并返回了错误.

有了scatter,我改为range(10)包含数据点的列表.每个列表包含x,y或z变量.

lo = plt.scatter(xLOutlier, yLOutlier, zLOutlier, …
Run Code Online (Sandbox Code Playgroud)

python matplotlib legend scatter-plot

51
推荐指数
3
解决办法
16万
查看次数

使用TKinter创建浏览按钮

我正在编写一些代码,用户需要能够选择程序将运行的文件.我创建了一个允许用户选择文件的浏览按钮,但是当你点击'okay'时,程序的其余部分都没有意识到有输入.选择文件后,还应在浏览栏中自动输入文件名.有什么建议?

from Tkinter import *

class Window:       

def __init__(self, master):     

    #Browse Bar
    csvfile=Label(root, text="File").grid(row=1, column=0)
    bar=Entry(master).grid(row=1, column=1) 

    #Buttons  
    y=7
    self.cbutton= Button(root, text="OK", command=master.destroy)       #closes window
    y+=1
    self.cbutton.grid(row=10, column=3, sticky = W + E)
    self.bbutton= Button(root, text="Browse", command=self.browsecsv)
    self.bbutton.grid(row=1, column=3)

#-------------------------------------------------------------------------------------#
def browsecsv(self):
    from tkFileDialog import askopenfilename

    Tk().withdraw() 
    filename = askopenfilename()

#-------------------------------------------------------------------------------------#
import csv

with open('filename', 'rb') as csvfile:
    logreader = csv.reader(csvfile, delimiter=',', quotechar='|')
    rownum=0

    for row in logreader:    
        NumColumns = len(row)        
        rownum += 1

    Matrix = [[0 for x in …
Run Code Online (Sandbox Code Playgroud)

python tkinter

6
推荐指数
2
解决办法
5万
查看次数

带插值的 Matplotlib 二维图

我正在尝试创建一个图来显示水平表面上的温度梯度。我能够降低颜色,但它并没有按照我需要的方式进行插值。这个问题有助于创建情节。似乎在生成情节时这些点的权重不同。是图形当前的外观。它应该看起来像颜色条,因为顶部的两个点是 23.7,底部的两个点是 23.4。我使用的代码是: 在此处输入图片说明

   xi, yi = np.linspace(xm, xM, 500), np.linspace(ym, yM, 500)
   xi, yi = np.meshgrid(xi, yi)
   xo=[0, 0, 2, 2]
   yo=[0, 2, 0, 2]
   ao=[23.4, 23.7, 23.4, 23.7]
   rbf = scipy.interpolate.Rbf(xo, yo, ao, function='linear')
   ai = rbf(xi, yi)

   plt.xlabel('X')
   plt.ylabel('Y')

   plt.imshow(ai, vmin=am, vmax=aM, origin='lower', extent=[xm, xM, ym, yM])

   plt.scatter(xo, yo, c=ao)
   plt.colorbar()
   plt.show()
Run Code Online (Sandbox Code Playgroud)

python matplotlib

3
推荐指数
1
解决办法
1万
查看次数

标签 统计

python ×3

matplotlib ×2

legend ×1

scatter-plot ×1

tkinter ×1