数据可视化---饼图、环形图、雷达图
2023-12-16 23:06:55
- 饼状图:展示了四个类别(A, B, C, D)的数据,每个类别的比例标注在图中。
- 环形图:与饼状图使用相同的数据,但采用环形设计,以不同的视觉风格呈现相同的信息。
- 雷达图:展示了六个不同指标(Metric 1 至 Metric 6)的数据,以雷达图的形式展现每个指标的数值。
这些图表可以根据您的数据和需求进行调整,以便更好地呈现信息。您可以改变数据集、标签和标题来自定义这些图表。 ?
import matplotlib.pyplot as plt
import numpy as np
def plot_pie_chart(data, labels, title="Pie Chart"):
"""
绘制饼状图。
:param data: 包含数值的列表。
:param labels: 与数据相对应的标签列表。
:param title: 图表的标题。
"""
fig, ax = plt.subplots()
ax.pie(data, labels=labels, autopct='%1.1f%%', startangle=140)
ax.axis('equal') # Equal aspect ratio ensures the pie chart is circular.
plt.title(title)
plt.show()
# 示例数据
pie_data = [35, 25, 25, 15]
pie_labels = ['Category A', 'Category B', 'Category C', 'Category D']
# 绘制图表
plot_pie_chart(pie_data, pie_labels, title="Example Pie Chart")
import matplotlib.pyplot as plt
import numpy as np
def plot_donut_chart(data, labels, title="Donut Chart"):
"""
绘制环形图。
:param data: 包含数值的列表。
:param labels: 与数据相对应的标签列表。
:param title: 图表的标题。
"""
fig, ax = plt.subplots()
ax.pie(data, labels=labels, autopct='%1.1f%%', startangle=140, pctdistance=0.85)
# Draw a circle at the center of pie to make it look like a donut
centre_circle = plt.Circle((0,0),0.70,fc='white')
fig = plt.gcf()
fig.gca().add_artist(centre_circle)
ax.axis('equal') # Equal aspect ratio ensures the pie chart is circular.
plt.title(title)
plt.show()
# 示例数据
pie_data = [35, 25, 25, 15]
pie_labels = ['Category A', 'Category B', 'Category C', 'Category D']
# 绘制图表
plot_donut_chart(pie_data, pie_labels, title="Example Donut Chart")
import matplotlib.pyplot as plt
import numpy as np
def plot_radar_chart(data, labels, title="Radar Chart"):
"""
绘制雷达图。
:param data: 包含数值的列表。
:param labels: 与数据相对应的标签列表。
:param title: 图表的标题。
"""
num_vars = len(labels)
angles = np.linspace(0, 2 * np.pi, num_vars, endpoint=False).tolist()
data += data[:1]
angles += angles[:1]
fig, ax = plt.subplots(figsize=(6, 6), subplot_kw=dict(polar=True))
ax.fill(angles, data, color='blue', alpha=0.25)
ax.plot(angles, data, color='blue', linewidth=2) # Draw the outline of our data
ax.set_yticklabels([])
ax.set_xticks(angles[:-1])
ax.set_xticklabels(labels)
plt.title(title, y=1.1)
plt.show()
# 示例数据
radar_data = [4, 5, 6, 3, 2, 5]
radar_labels = ['Metric 1', 'Metric 2', 'Metric 3', 'Metric 4', 'Metric 5', 'Metric 6']
# 绘制图表
plot_radar_chart(radar_data, radar_labels, title="Example Radar Chart")
文章来源:https://blog.csdn.net/weixin_41620184/article/details/135038613
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!