插入折线图。
首先1月份销量的折线图,选中C5单元格,依次单击页面最上方功能区【插入】选项卡,在下列*图表*分组中单击“插入折线图或面积图”扩展按钮,在菜单列表中选择*二维折线图*第一个图表样式。
插入1月销量折线图样式如下
同上操作插入2月销量折线图,动图演示如下
合并折线图
选中1月销量折线图,接着单击鼠标右键,弹出右键菜单设置界面,单击*选择数据*。
弹出【选择数据源】对话框界面,单击左侧系列中的*添加*。
弹出【编辑数据系列】对话框界面,鼠标移动至系列名称编辑栏使用鼠标选中 *2月销量*所在单元格,在系列值 编辑栏使用鼠标选中 C16:C22数值所在的区域,单击对话框界面下方的*确认*按钮。
此时原1月销量折线图中增加了一条折线,完成两条折线合并到一起。
在Excel中用折线图对多数据进行图表展示时,往往多条折线间相互堆积、缠绕,难以区分,如下:
那么,怎么理清头绪,对各数据折线进行横向分隔,制作成如下的图表呢?
步骤:
1、原始进行处理:
原始数据为行列式常规数据图表,首先对数据进行排列处理:对各列数据错行排列,且为了各折线横向间有空间间隔,各列数据间有一行间隔。
2、插入折线图:
选择图表,执行“插入”菜单-“图表”-“插入折线图或面积图”右侧下拉箭头-“二维折线图”之“折线图”,这样,在文件中插入系列横向分隔的折线图。
可以选择“设计”菜单-“图表样式”,选择一个合适的图表样式。
3、图表修饰:
选择图表,点击右上角“+”号进行图表元素设置,可对“数据标签”、“网格线”、等进行设置;删除纵坐标轴、设置图表标题、文字字体字号等;
※ 小贴士:
1、横坐标轴距离折线较远,可调整纵坐标轴的边界的最小值,具体方法可私信或参考以前的发文。
2、表格行列转置后,可得到不一样的展示效果。转置方法也可私信或参考以前的发文。
※源文件获取:
请认准头条号“学习Dream”,关注、点赞、评论、收藏、转发、留邮箱;
^_^注明文章标题^_^
当在数据分析或数据处理过程中,可能需要合并表格以获得更完整的信息或更好的洞察。在Pandas库中,concat()和merge()是两个常用的函数,用于将多个数据帧(DataFrame)或序列(Series)组合在一起。它们的主要区别在于它们的用途和合并方式。
concate:函数是用于拼接两个或多个DataFrame或Series对象沿着行或列的方向。这个函数可以用于简单的数据拼接,也可以用于复杂的数据处理任务。
df = pdncat(objs, axis=0, join='outer', ignore_index=False, keys=None, levels=None, names=None, verify_integrity=False, sort=None, copy=True)
(1)objs:对象,一般为df或者series
(2)axis:拼接方向,默认为0,行拼接,若axis=1,则为列拼接
(3)join:默认为outer表示并集,inner表示交集, left/right表示左右连接
(4)ignore_index=True:重建索引
(5)keys:创建层次化索引
(a)两张表列数一致,只是需要将行数简单拼接时:pdncat([df1,df2]),效果df1end(df2)。
(b)两张表行数一致,只需要列简单拼接时:pdncate([df1,df2],axis=1),效果pdrge(df1,df2,left_index=True,right_index=True,how=‘outer’)。
(c)两张表按行拼接,只想保留列索引相同的列,则how=‘inner’。
(d)两张表按列拼接,只想保留行索引相同的行,则how=‘inner’。
下面是一些concat()函数的使用示例和总结:
沿着行方向拼接DataFrame如果想要沿着行方向将两个DataFrame对象拼接在一起,可以使用concat()函数,如下所示:
import pandas as pd df1 = pd.DataFrame({'A': [1, 2], 'B': [3, 4]}) df2 = pd.DataFrame({'A': [5, 6], 'B': [7, 8]}) concated_df = pdncat([df1, df2]) print(concated_df)
这将会在两个DataFrame之间进行行拼接,输出的结果如下:
A B 0 1 3 1 2 4 0 5 7 1 6 8沿着列方向拼接DataFrame
如果想要沿着列方向将两个DataFrame对象拼接在一起,可以通过设置axis=1来实现,如下所示:
import pandas as pd df1 = pd.DataFrame({'A': [1, 2], 'B': [3, 4]}) df2 = pd.DataFrame({'A': [5, 6], 'B': [7, 8]}) concated_df = pdncat([df1, df2], axis=1) print(concated_df)
这将会在两个DataFrame之间进行列拼接,输出的结果如下:
A B A B 0 1 3 5 7 1 2 4 6 8使用 ignore_index 参数更改索引
如果想要在拼接之后更改DataFrame的索引,可以使用ignore_index参数,如下所示:
import pandas as pd df1 = pd.DataFrame({'A': [1, 2], 'B': [3, 4]}) df2 = pd.DataFrame({'A': [5, 6], 'B': [7, 8]}) concated_df = pdncat([df1, df2], ignore_index=True) print(concated_df)
这将会在拼接之后重设DataFrame的索引,输出的结果如下:
A B0 1 31 2 42 5 73 6 8
merge:merge()函数来合并两个表格。merge()函数的基本语法如下:
merge(left, right, how='inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=True, suffixes=('_x', '_y'), copy=True, indicator=False, validate=None)
(1)left和right分别表示要合并的左右两个表格;
(2)how参数指定合并方式,包括内连接(inner)、左连接(left)、右连接(right)和外连接(outer);
(3)on参数指定用于合并的列名;left_on和right_on参数分别指定左右两个表格中用于合并的列名;
(4)left_index和right_index参数指定是否使用索引列进行合并;
(5)sort参数指定是否排序结果表格;
(6)suffixes参数指定左右两个表格重叠列名的后缀;
(7)copy参数指定是否复制原始数据;
(8)indicator参数指定是否添加指示符列;
(9)validate参数指定是否验证合并结果。
下面的例子将会详细说明如何使用:
首先,我们创建两个简单的DataFrame:
import pandas as pd # 创建第一个DataFrame df1 = pd.DataFrame({ 'A': ['A0', 'A1', 'A2', 'A3'], 'B': ['B0', 'B1', 'B2', 'B3'], 'key': ['K0', 'K1', 'K0', 'K1'] }) # 创建第二个DataFrame df2 = pd.DataFrame({ 'key': ['K0', 'K1'], 'C': ['C0', 'C1'] })
默认情况下,merge()函数执行的是内连接(inner join):
merged = pdrge(df1, df2, on='key') print(merged)
结果:
A B key C 0 A0 B0 K0 C0 1 A1 B1 K1 C1 2 A2 B2 K0 C0 3 A3 B3 K1 C1
如果我们想执行左连接或右连接,我们可以设置how参数:
左连接:
merged = pdrge(df1, df2, on='key', how='left') print(merged)
右连接:
merged = pdrge(df1, df2, on='key', how='right') print(merged)
如果我们想根据多个键进行合并,我们可以传入一个键的列表给on参数:
merged = pdrge(df1, df2, on=['key1', 'key2']) print(merged)
总结一下,concat()函数用于将多个数据帧或序列按照行或列的方向进行简单的拼接,而merge()函数用于将两个数据帧按照指定的列或索引进行合并。concat()函数保留所有输入对象的索引或列名,而merge()函数会根据合并的键连接行,并可能添加新的列来存储来自两个数据帧的值。