以下是可能的Python代码实现:

import mysql.connector
import matplotlib.pyplot as plt

# 连接数据库
mydb = mysql.connector.connect(
    host="localhost",
    user="root",
    password="password",
    database="mydatabase"
)

# 从数据库中选取总价最高的10个二手房
mycursor = mydb.cursor()
mycursor.execute("SELECT total_price, community_name FROM data ORDER BY total_price DESC LIMIT 10")
result = mycursor.fetchall()

# 将数据转化为列表
total_prices = []
community_names = []
for row in result:
    total_price = int(row[0])
    community_name = row[1]
    total_prices.append(total_price)
    community_names.append(community_name)

# 绘制柱状图
fig, ax = plt.subplots()
ax.barh(community_names, total_prices, color=plt.cm.Set1(range(len(total_prices))))
ax.invert_yaxis()
ax.set_xlabel('Total price')
ax.set_ylabel('Community name')
ax.set_title('Top 10 expensive second-hand houses')
plt.show()

这段代码首先连接了MySQL数据库,并从data表中选取了总价最高的10个二手房的数据。然后将这些数据转化为两个列表,total_prices和community_names。接着使用matplotlib库绘制了柱状图,其中横轴为总价,纵轴为小区名称。每个柱子都染上不同颜色,使用plt.cm.Set1()函数实现。最后通过调用show()函数显示柱状图。由于要求柱子越长的在上方,越短的在下方,因此使用了invert_yaxis()函数来反转y轴方向

写一个python代码读取我mysql80数据库中data表中的总价转化为整型和小区名称的数据从中选取总价最高的10个二手房y轴展示小区名称x轴展示总价每条柱都染上不同颜色制成柱状图要求柱子越长的在上方越短的在下方

原文地址: https://www.cveoy.top/t/topic/dVzQ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录