数据分析可视化:散点图矩阵与雷达图的生成
目录
- 一、经营数据绘制散点图矩阵
- 1.代码解释
- 2.代码说明
- 3.注意事项
- 二、雷达图
- 1.代码解释
- 2.代码说明
- 3. 注意事项
- 4. 运行代码
- 总结
一、经营数据绘制散点图矩阵
import seaborn as sns
import pandas as pd
rc = {'font.sans-serif':'Arial Unicode MS',
'axes.unicode_minus':False}
sns.set(context='notebook',style='ticks',rc=rc)
iris = pd.read_excel("D:/edge/经营数据.xls")
sns.pairplot(iris,hue='type',plot_kws={'alpha':0.6,'s':80,'edgecolor':'k'},height=3)
下面是对代码的解释和一些可能需要注意的地方:
1.代码解释
import seaborn as sns
import pandas as pd
# 设置绘图的字体和符号显示
rc = {'font.sans-serif': 'Arial Unicode MS', 'axes.unicode_minus': False}
sns.set(context='notebook', style='ticks', rc=rc)
# 读取Excel文件中的数据
iris = pd.read_excel("D:/edge/经营数据.xls")
# 使用pairplot绘制散点图矩阵
sns.pairplot(iris, hue='type', plot_kws={'alpha': 0.6, 's': 80, 'edgecolor': 'k'}, height=3)
# 显示图形
import matplotlib.pyplot as plt
plt.show()
2.代码说明
-
导入必要的库:
seaborn
用于绘制统计图形。pandas
用于数据处理和读取。
-
设置绘图样式:
rc
字典用于设置绘图的字体和符号显示。'font.sans-serif': 'Arial Unicode MS'
设置了默认的无衬线字体,适用于中文显示。'axes.unicode_minus': False
避免负号显示为方块。
-
读取数据:
- 使用
pd.read_excel
从Excel文件中读取数据。确保文件路径正确,且文件存在。
- 使用
-
绘制散点图矩阵:
sns.pairplot
用于绘制散点图矩阵。hue='type'
指定了分类变量,根据不同的类型使用不同的颜色。plot_kws
字典用于设置散点图的样式,包括透明度 (alpha
)、点的大小 (s
) 和边缘颜色 (edgecolor
)。height=3
设置每个子图的高度为3英寸。
-
显示图形:
- 使用
plt.show()
显示绘制的图形。
- 使用
3.注意事项
- 文件路径:确保文件路径
D:/edge/经营数据.xls
正确且文件存在。如果文件不在指定位置,代码会报错。 - 数据格式:确保Excel文件中的数据格式正确,特别是分类变量
type
列是否存在且数据类型正确。 - 字体安装:确保系统中已安装
Arial Unicode MS
字体,否则可能会导致中文显示问题。如果没有安装,可以考虑使用其他支持中文的字体。 - 环境配置:确保你的Python环境中已安装
seaborn
、pandas
和matplotlib
库。可以使用以下命令安装这些库:pip install seaborn pandas matplotlib
二、雷达图
1.代码解释
import pygal
# 创建配置对象
my_config = pygal.Config()
my_config.show_legend = True
# 设置图表样式
my_config.style.title_font_size = 26
my_config.style.label_font_size = 16
# 创建雷达图对象
radar_chart = pygal.Radar(my_config, fill=False, range=(0, 50))
# 设置图表标题
radar_chart.title = '雷达图'
# 设置 X 轴标签
radar_chart.x_labels = ['东', '西', '中', '华南', '西南', '西北', '东北']
# 添加数据系列
radar_chart.add('第一', [22, 11, 33, 44, 23, 23, 34])
radar_chart.add('第二', [20, 15, 33, 42, 43, 43, 34])
radar_chart.add('第三', [22, 31, 23, 34, 53, 43, 34])
# 将图表渲染为 SVG 文件
radar_chart.render_to_file('雷达图.svg')
2.代码说明
-
导入
pygal
库:pygal
是一个用于生成矢量图形(SVG)的 Python 库。
-
创建配置对象:
my_config = pygal.Config()
创建了一个配置对象,用于设置图表的各种属性。my_config.show_legend = True
启用了图例显示。
-
设置图表样式:
my_config.style.title_font_size = 26
设置了图表标题的字体大小。my_config.style.label_font_size = 16
设置了标签的字体大小。
-
创建雷达图对象:
radar_chart = pygal.Radar(my_config, fill=False, range=(0, 50))
创建了一个雷达图对象,并设置了配置对象、是否填充区域以及数据范围。
-
设置图表标题:
radar_chart.title = 'bushuo'
设置了图表的标题。
-
设置 X 轴标签:
radar_chart.x_labels = ['东', '西', '中', '华南', '西南', '西北', '东北']
设置了 X 轴的标签。
-
添加数据系列:
radar_chart.add('第一', [22, 11, 33, 44, 23, 23, 34])
添加了第一个数据系列。radar_chart.add('第二', [20, 15, 33, 42, 43, 43, 34])
添加了第二个数据系列。radar_chart.add('第三', [22, 31, 23, 34, 53, 43, 34])
添加了第三个数据系列。
-
将图表渲染为 SVG 文件:
radar_chart.render_to_file('雷达图.svg')
将图表保存为名为雷达图.svg
的 SVG 文件。
3. 注意事项
-
安装
pygal
库:- 确保你的环境中已安装
pygal
库。如果没有安装,可以使用以下命令安装:pip install pygal
- 确保你的环境中已安装
-
字体显示:
- 如果你在图表中使用中文标签,确保你的系统支持中文显示。如果中文显示有问题,可以考虑使用其他支持中文的字体。
-
文件路径:
- 确保你有权限在当前目录下创建和写入文件。如果需要,可以指定完整的文件路径。
4. 运行代码
将上述代码保存到一个 Python 文件中,然后运行该文件,你应该能够在当前目录下看到一个名为 雷达图.svg
的文件,打开该文件即可查看生成的雷达图。
指定文件保存路径
你可以在 render_to_file 方法中指定文件的完整路径,这样可以直接将文件保存到你希望的位置。
radar_chart.render_to_file('D:/charts/雷达图.svg')
总结
通过上述代码,可以生成一个散点图矩阵和一个雷达图,分别用于展示经营数据的不同方面。这些图表不仅可以帮助你更好地理解数据,还可以用于报告和展示,提高数据分析的可视化效果。确保在运行代码前检查文件路径和数据格式,以避免潜在的错误。