Python Can';Tkinter中的t显示阵列
所以我有一个问题,我找到了这段代码,希望将结果(计数)显示为 Tkinter或PyQt内的条形图。它应该显示窗口,里面必须有matplotlib条形图。 现在有一些无用的进口特金特Python Can';Tkinter中的t显示阵列,python,tkinter,Python,Tkinter,所以我有一个问题,我找到了这段代码,希望将结果(计数)显示为 Tkinter或PyQt内的条形图。它应该显示窗口,里面必须有matplotlib条形图。 现在有一些无用的进口特金特 import menu as menu import numpy as np from matplotlib import colors from scipy.spatial import cKDTree as KDTree from scipy.misc import face import matplotlib.
import menu as menu
import numpy as np
from matplotlib import colors
from scipy.spatial import cKDTree as KDTree
from scipy.misc import face
import matplotlib.pyplot as plt
plt.rcdefaults()
from tkinter import *
REDUCED_COLOR_SPACE = True
# borrow a list of named colors from matplotlib
if REDUCED_COLOR_SPACE:
use_colors = {
k: colors.cnames[k]
for k in ['red', 'green', 'blue', 'black', 'yellow', 'purple']
}
else:
use_colors = colors.cnames
# translate hexstring to RGB tuple
named_colors = {
k: tuple(map(int, (v[1:3], v[3:5], v[5:7]), 3 * (16, )))
for k, v in use_colors.items()
}
ncol = len(named_colors)
if REDUCED_COLOR_SPACE:
ncol -= 1
no_match = named_colors.pop('purple')
else:
no_match = named_colors['purple']
# make an array containing the RGB values
color_tuples = list(named_colors.values())
color_tuples.append(no_match)
color_tuples = np.array(color_tuples)
color_names = list(named_colors)
color_names.append('no match')
# get example picture
img = face()
# build tree
tree = KDTree(color_tuples[:-1])
# tolerance for color match inf means use best match no matter how
# bad it may be
tolerance = np.inf
# find closest color in tree for each pixel in picture
dist, idx = tree.query(img, distance_upper_bound=tolerance)
# count and reattach names
counts = dict(zip(color_names, np.bincount(idx.ravel(), None, ncol + 1)))
print(counts)
您可以在PYQT5代码中使用此选项
from PyQt5.QtChart import QChart, QChartView, QValueAxis, QBarCategoryAxis, QBarSet, QBarSeries
from PyQt5.Qt import Qt
from PyQt5.QtGui import QPainter
def draw_chart():
main_list = [20,30,5,10,100,70]
return_list = [100,70,30,5,1,10]
set0 = QBarSet('Sale Amount')
set1 = QBarSet('Return Amount')
set0.append(main_list)
set1.append(return_list)
series = QBarSeries()
series.append(set0)
series.append(set1)
chart = QChart()
chart.addSeries(series)
chart.setTitle('SALE AND RETURN CHART')
chart.setAnimationOptions(QChart.SeriesAnimations)
months = ('Jan', 'Feb', 'Mar', 'Apr', 'May','Jun')
axisX = QBarCategoryAxis()
axisX.append(months)
axisY = QValueAxis()
axisY.setRange(0, 1000)
chart.addAxis(axisX, Qt.AlignBottom)
chart.addAxis(axisY, Qt.AlignLeft)
chart.legend().setVisible(True)
chart.legend().setAlignment(Qt.AlignBottom)
self.chartView = QChartView(chart)
self.gridLayout_4.addWidget(self.chartView, 1, 0, 1, 1)
如果您还需要任何帮助,一定要问我。您好,欢迎来到Stack Overflow!关于您如何尝试显示条形图的信息会很有帮助。您应该添加一些关于您所做操作的说明。只使用代码的答案没有多少价值。