嗨玩手游网

Excel 图表制作,如何设置或返回x坐标轴,图表系列值

Excel图表制作,一直是个难点,由于其类型多,格式也复杂,涉及到的图形也比较多,所以在使用过程当中,会发现有点不知所措。

Chart对象

本节简单介绍一下,使用VBA代码在数据表中的系列值如何设置和返回。

首先还是要获取一个Chart对象,上节我们介绍过,Chart对象就是代表一个图表。

一个图表里面包含了很多图片、文本,下面就对这些图片、文本进行设置做一个梳理。

如下图所示:提取出图表中的年龄和姓名生成一表。

代码

可以重点看一下代码,对照代码进行理解:

Option ExplicitPrivate Sub GetSeries()Dim xChart As ObjectSet xChart = ThisWorkbook.Charts(1) '返回Chart图表工作表Dim i As Integer, n As Integern = xChart.SeriesCollection.Count '返回系列总数For i = 1 To n Range("B6").Offset(i, 0) = xChart.SeriesCollection(i).NameNext iDim xChartObject As Object, xSeries As Objectn = xChart.SeriesCollection.CountIf n >= 1 Then For i = 1 To n Set xSeries = xChart.SeriesCollection(i) Range("B6").Offset(i - 1, 1).Value = xSeries.Name Next iEnd IfxSeries.SelectDim x As Variant, xArr()xArr = xSeries.XValues '返回x轴值数组i = 1For Each x In xArr Range("B6").Offset(i, 0).Value = xArr(i) i = i + 1Next xxArr = xSeries.Values '返回系列值数组i = 1For Each x In xArr Range("B6").Offset(i, 1).Value = xArr(i) i = i + 1Next xEnd Sub

关键代码:

Set xChart = ThisWorkbook.Charts(1) '返回Chart图表工作表Set xSeries = xChart.SeriesCollection(1)'返回第一个系列对象xArr = xSeries.XValues '返回x轴值数组xArr = xSeries.Values'返回系列值数组xSeries.Values = Array(222, 221, 1111)'设置系列值xSeries.XValues = Array("姓名一", "姓名二", "姓名三") '设置x轴系列值Series对象方法和属性

方法

属性

ApplyDataLabels

Application

ClearFormats

ApplyPictToEnd

Copy

ApplyPictToFront

DataLabels

ApplyPictToSides

Delete

AxisGroup

ErrorBar

BarShape

Paste

BubbleSizes

Points

ChartType

Select

Creator

Trendlines

ErrorBars

Explosion

Format

Formula

FormulaLocal

FormulaR1C1

FormulaR1C1Local

GeoMappingLevel

GeoProjectionType

Has3DEffect

HasDataLabels

HasErrorBars

HasLeaderLines

InvertColor

InvertColorIndex

InvertIfNegative

IsFiltered

LeaderLines

MarkerBackgroundColor

MarkerBackgroundColorIndex

MarkerForegroundColor

MarkerForegroundColorIndex

MarkerSize

MarkerStyle

Name

Parent

ParentDataLabelOption

PictureType

PictureUnit2

PlotColorIndex

PlotOrder

QuartileCalculationInclusiveMedian

RegionLabelOptions

Shadow

Smooth

Type

Values

XValues

很显然,用到了不止一个对象,有Chart、Series和SeriesCollection,三个对象。

这三个对象分别有许多方法和属性,而这里用到了Series的xValues和Values两个。

其它方法属性,下次再做详细介绍。

关键是如何获取对象,并对对象的哪些属性进行修改,这样再编程序的时候就可以方便地解决我们的需求了。

欢迎关注、收藏

---END---

Excel技巧:如何翻转Excel图表的坐标轴?

在Excel图表坐标轴调整下图这样:

要把上图的月份坐标轴(水平坐标轴)调成下图效果:

问题:如何调整图表的水平/垂直坐标轴的位置?

解答:利用图表中的坐标轴逆序功能来实现。

具体操作如下:如果要翻转水平坐标轴,则需要选中对应的垂直坐标轴,如(下图 1 处)所示:

然后按Ctrl+1组合键打开对应设置菜单,勾选“逆序刻度值”即可。如下图2 处。

同理,如果要翻转“垂直坐标轴”位置,这需要选中“水平坐标轴”。然后在设置菜单中,勾选“逆序类别”。(下图 3 处)

设置完毕后效果如下:

总结:Excel中任意图表的坐标轴可以实现位置的翻转,但需要注意翻转的坐标轴与选中设置坐标轴之间的对应关系。掌握坐标轴的翻转,是高级图表制作的基础。

Excel表格中图表怎么自定义X轴和Y轴?有什么作用?

Excel图表包含两个坐标轴,分别是X轴和Y轴,通常情况下X轴作为图表类别,而Y轴则是作为图表系列。

那么根据不同图表的需求,怎么来自定义调整x轴和y轴的值呢?

下面我们以两个图表实例,来讲解自定义x轴和y轴的操作。

如下图为柱形图,它是2022年全国GDP十强县规模和同比增长率图表。

从图表可见,x轴作为类别轴,显示了不同城市,而y轴作为系列轴,要显示各城市的gdp数值。

此时图表并不能很直观地展示最大gdp值和最小gdp值的对比,比如对比第1个柱子昆山的值和最后1个柱子义乌的值,实际上两个数值分别为5004.7与1835.54,几乎是3倍的差距,但这个图表没有很明显地展示出它们之间的差距!

因此我们可以通过自定义y轴的值,来改变这一情况。

首选我们点击y轴坐标,然后右击鼠标,在弹出的属性框中选择“设置坐标轴格式”。

随后在弹出的设置框中点击坐标轴选项下的“最小值”输入框,并更改值为1500.

这里为什么要输入最小值为“1500”?

这是因为义乌的数据是1835.54,我们需要取一个小于这个数值且比较接近的整数,因为选择1500。当然我们也可以输入1800、1700……等,并不一定是一个固定的数字,按照一般需求即可。

完成操作后,我们回到图表,此时从下图可见,图表前两个柱子的长度与后几个柱子长度差别非常明显,我们可以更直观地比较两组数据之间的差距!

因此自定义y轴的操作是通过设置坐标轴格式,并手动调整坐标轴边界值中的最小值或最大值,或者是调整单位的大小间隔。

接下来我们再通过一个散点图来自定义x轴。

如下图所示,它是某同学2022年足迹图。

从图表可见基本上所有的城市点都在图表上方,那么为了能够更均匀的展示数据,因此我们可以对图表的x轴和y轴进行调整。

通过上面所学,调整y轴的值是通过设置坐标轴格式,因此我们右击y轴,在边界最小值处输入“15”,这个值的原理与上面所述相同。

此时所有的城市点将较为均匀地分布在图表中,随后我们再点击下方x轴坐标。

由于刚才设置了y轴格式,还没有关闭设置窗口,因此可以直接点击x轴,系统会自动切换坐标轴格式窗口为x轴的设置界面,如上图所示,我们同样将最小值进行调整,设置为“108”,这样最接近这个点的城市会显示在靠近边界的位置。

自定义x轴和y轴的效果如下图所示:

那么从上述两个图表的自定义操作可知,要更改x轴和y轴的值,实际上是对坐标轴中的边界和单位进行调整,而调整x轴及y轴的值,其原因则是为了使图表更贴合我们的需求,比如展示更明显地对比差异,或者使图表中的点更加均匀分布等等。

更多攻略
游戏推荐
更多+