在数据分析和可视化领域,生成直观的图表是展示数据的重要手段。而结合AI技术,我们可以更高效地完成这一任务。本文将介绍如何利用Qwen3和QuickChart MCP,快速生成一个可视化天气图表。整个过程简单易懂,即使是编程新手也能轻松上手。


一、工具与环境准备

1. Qwen3

Qwen3 是一款基于AI的文本生成工具,支持用户通过输入自然语言描述生成高质量的文本内容。它在数据分析和报告生成中表现出色。

2. QuickChart MCP

QuickChart 是一个专注于数据可视化的工具,支持用户通过简单的API调用生成各种图表。MCP(Model Control Protocol)协议的引入,进一步提升了其灵活性和扩展性。

3. Python环境

确保您已经安装了Python,并安装了必要的库:

pip install requests matplotlib

二、获取天气数据

为了生成天气图表,我们需要先获取天气数据。这里我们以获取北京市的天气数据为例:

步骤1:获取天气数据

我们可以使用公开的天气API(如OpenWeatherMap)来获取天气数据。以下是示例代码:

import requests

# OpenWeatherMap API密钥(需要自行注册获取)
API_KEY = "your_api_key"
CITY = "Beijing"

# 调用API获取天气数据
url = f"http://api.openweathermap.org/data/2.5/weather?q={CITY}&appid={API_KEY}"
response = requests.get(url)
weather_data = response.json()

# 提取所需数据
temperature = weather_data["main"]["temp"]
humidity = weather_data["main"]["humidity"]
wind_speed = weather_data["wind"]["speed"]

步骤2:生成天气描述

使用Qwen3生成天气描述:

import requests

# 调用Qwen3生成天气描述
def generate_weather_description(temperature, humidity, wind_speed):
    prompt = f"当前温度为{temperature}℃,湿度为{humidity}%,风速为{wind_speed}m/s。请生成一段天气描述。"
    response = requests.post(
        "https://api.qwen3.com/v1/chat/completions",
        json={
            "messages": [{"role": "user", "content": prompt}],
            "temperature": 0.7
        }
    )
    return response.json()["choices"][0]["message"]["content"]

weather_description = generate_weather_description(temperature, humidity, wind_speed)
print(weather_description)

三、生成可视化图表

步骤1:绘制图表

使用Matplotlib绘制天气图表:

import matplotlib.pyplot as plt

# 数据准备
categories = ["温度", "湿度", "风速"]
values = [temperature, humidity, wind_speed]

# 绘制柱状图
plt.figure(figsize=(10, 6))
plt.bar(categories, values, color=["blue", "green", "red"])
plt.title("北京市天气状况")
plt.xlabel("指标")
plt.ylabel("值")
plt.show()

步骤2:生成图表图片

将图表保存为图片文件:

plt.savefig("weather_chart.png")

四、使用QuickChart MCP发布图表

步骤1:配置QuickChart MCP

在QuickChart中配置MCP服务,具体步骤如下:

  1. 登录QuickChart官网(https://www.quickchart.io/)。
  2. 进入“设置”页面,找到“MCP-Server”相关配置。
  3. 启用MCP-Server,并配置相应的端口和访问权限。

步骤2:上传图表

将生成的图表图片上传到QuickChart:

import requests

# QuickChart API密钥(需要自行注册获取)
QUICKCHART_API_KEY = "your_quickchart_api_key"

# 上传图表图片
with open("weather_chart.png", "rb") as f:
    response = requests.post(
        "https://api.quickchart.io/v1/upload",
        headers={"Authorization": f"Bearer {QUICKCHART_API_KEY)"},
        files={"file": f}
    )
    chart_url = response.json()["url"]

print(f"图表URL:{chart_url}")

步骤3:生成天气报告

结合Qwen3生成的天气描述和QuickChart生成的图表,生成完整的天气报告:

# 生成天气报告
weather_report = f"""
# 北京市天气报告

{weather_description}

![天气图表]({chart_url})
"""

print(weather_report)

五、总结

通过结合Qwen3和QuickChart MCP,我们可以快速生成一个可视化天气图表,并将其发布到QuickChart上。这种方法不仅节省了时间和精力,还能够确保生成内容的高质量和创意性。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐