首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用amcharts 4在地图中的多个饼图中创建共享图例?

amCharts是一个用于数据可视化的JavaScript库。它提供了丰富的图表类型和功能,可以轻松地创建交互式和可定制的图表。

要在地图中的多个饼图中创建共享图例,可以按照以下步骤进行操作:

  1. 首先,确保已经引入了amCharts库的JavaScript文件和相关的CSS文件。可以从官方网站(https://www.amcharts.com/)下载最新版本的amCharts库。
  2. 创建一个包含所有饼图的父容器,例如一个div元素,给它一个唯一的ID。
  3. 初始化amCharts库,创建一个地图对象,并设置地图的属性和配置。例如,可以指定地图的投影、背景颜色等。
  4. 创建每个饼图对象,并设置其属性和配置。例如,可以指定饼图的数据源、图例、颜色等。
  5. 为每个饼图对象创建一个独立的图例容器,可以是一个div元素,给它一个唯一的ID。
  6. 将每个饼图对象的图例容器ID设置为共享的图例容器ID。这样,所有饼图将共享同一个图例。

以下是一个使用amCharts 4创建共享图例的示例代码:

代码语言:txt
复制
// 引入amCharts库的JavaScript文件和CSS文件
<script src="amcharts4/core.js"></script>
<script src="amcharts4/maps.js"></script>
<script src="amcharts4/charts.js"></script>
<link rel="stylesheet" href="amcharts4/core.css">
<link rel="stylesheet" href="amcharts4/maps.css">
<link rel="stylesheet" href="amcharts4/charts.css">

// 创建一个包含所有饼图的父容器
<div id="chartContainer"></div>

// 初始化amCharts库,创建一个地图对象
var chart = am4core.create("chartContainer", am4maps.MapChart);

// 设置地图的属性和配置
chart.projection = new am4maps.projections.Miller();
chart.background.fill = am4core.color("#ffffff");

// 创建每个饼图对象
var pie1 = chart.series.push(new am4charts.PieSeries());
var pie2 = chart.series.push(new am4charts.PieSeries());

// 设置饼图的属性和配置
pie1.dataFields.value = "value1";
pie1.dataFields.category = "category1";
pie1.legendSettings.labelText = "[bold {color}]{name}";
pie1.colors.list = [
  am4core.color("#336699"),
  am4core.color("#669933"),
  am4core.color("#993366")
];

pie2.dataFields.value = "value2";
pie2.dataFields.category = "category2";
pie2.legendSettings.labelText = "[bold {color}]{name}";
pie2.colors.list = [
  am4core.color("#cc6666"),
  am4core.color("#66cc66"),
  am4core.color("#6666cc")
];

// 创建共享的图例容器
var legendContainer = am4core.create("legendContainer", am4core.Container);
legendContainer.layout = "vertical";
chart.legend = legendContainer;

// 将每个饼图对象的图例容器ID设置为共享的图例容器ID
pie1.legend.parent = legendContainer;
pie2.legend.parent = legendContainer;

// 设置数据源并渲染图表
chart.data = [{
  "category1": "Category 1",
  "value1": 100,
  "category2": "Category 1",
  "value2": 200
}, {
  "category1": "Category 2",
  "value1": 150,
  "category2": "Category 2",
  "value2": 250
}, {
  "category1": "Category 3",
  "value1": 200,
  "category2": "Category 3",
  "value2": 300
}];

这样就可以在地图中的多个饼图中创建共享图例了。每个饼图都会有自己的数据和图例,但它们将共享同一个图例容器,从而实现共享图例的效果。

注意:以上示例代码中的amCharts库文件路径和图表数据仅供参考,请根据实际情况进行调整。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

常用60类图表使用场景、制作工具推荐!

在弧线图中,节点将沿着 X轴放置,然后再利用弧线表示节点与节点之间的连接关系。 弧线图适合用来查找数据共同出现的情况。...堆叠式条形图 跟多组条形图不同,堆叠式条形图 (Stacked Bar Graph) 将多个数据集的条形彼此重迭显示,适合用来显示大型类别如何细分为较小的类别,以及每部分与总量有什么关系。...饼形图适合用来快速展示数据比例分布,但主要缺点是:不能显示太多项目、通常需要图例说明、不能准确比较。...如果是按比例绘制的时间线,我们可以通过查看不同事件之间的时间间隔,了解事件发生的时间或即将在何时发生,从中查找时间段内的事件是否遵循任何模式,或者事件在该时间段内如何分布。...象形图 说明图旨在使用笔记、标签和图例来解释说明所显示的图像,以便解释概念或方法、描述物件或场所、显示事情的运作变化或帮助了解所显示的主题。 所使用的图像可以是象征性、图像化或真实相片。

8.9K20

60 种常用可视化图表,该怎么用?

在弧线图中,节点将沿着 X轴放置,然后再利用弧线表示节点与节点之间的连接关系。 弧线图适合用来查找数据共同出现的情况。...堆叠式条形图 跟多组条形图不同,堆叠式条形图 (Stacked Bar Graph) 将多个数据集的条形彼此重迭显示,适合用来显示大型类别如何细分为较小的类别,以及每部分与总量有什么关系。...饼形图适合用来快速展示数据比例分布,但主要缺点是:不能显示太多项目、通常需要图例说明、不能准确比较。...如果是按比例绘制的时间线,我们可以通过查看不同事件之间的时间间隔,了解事件发生的时间或即将在何时发生,从中查找时间段内的事件是否遵循任何模式,或者事件在该时间段内如何分布。...象形图 说明图旨在使用笔记、标签和图例来解释说明所显示的图像,以便解释概念或方法、描述物件或场所、显示事情的运作变化或帮助了解所显示的主题。 所使用的图像可以是象征性、图像化或真实相片。

9K10
  • 推荐12个最好的 JavaScript 图形绘制库

    你可以使用它用一个数组创建基本的 HMTL 表格,或是利用它的流体过度和交互,用相似的数据创建惊人的 SVG 条形图。 ChartJS ?...Chart.js 是一个令人印象深刻的 JavaScript 图表库,建立在 HTML5 Canvas 基础上。目前,它支持6种图表类型(折线图,条形图,雷达图,饼图,柱状图和极地区域区)。...它提供了所有主要的图表类型,如饼图,柱形图,条形图,面积,地理,时间,以及多个系列。 MeteorCharts ? 它有一个很酷的图表生成器,为您提供选项来选择图表,选择主题,然后生成一个图表。...amCharts ? amCharts 无疑是最漂亮的图表库。...提供商业产品常用图表库,底层基于ZRender,创建了坐标系,图例,提示,工具箱等基础组件,并在此上构建出折线图(区域图)、柱状图(条状图)、散点图(气泡图)、饼图(环形图)、K线图、地图、和弦图以及力导向布局图

    7.6K30

    可视化图表样式使用大全

    跟多组条形图不同,堆叠式条形图 (Stacked Bar Graph) 将多个数据集的条形彼此重迭显示,适合用来显示大型类别如何细分为较小的类别,以及每部分与总量有什么关系。...非常适合用来比较数值和显示比例(尺寸、数量等),以便快速全面地了解数据的相对大小,而无需使用刻度。...饼形图适合用来快速展示数据比例分布,但主要缺点是:不能显示太多项目、通常需要图例说明、不能准确比较。...如果是按比例绘制的时间线,我们可以通过查看不同事件之间的时间间隔,了解事件发生的时间或即将在何时发生,从中查找时间段内的事件是否遵循任何模式,或者事件在该时间段内如何分布。...说明图旨在使用笔记、标签和图例来解释说明所显示的图像,以便解释概念或方法、描述物件或场所、显示事情的运作变化或帮助了解所显示的主题。 所使用的图像可以是象征性、图像化或真实相片。 茎叶图 ?

    9.4K10

    【Python篇】matplotlib超详细教程-由入门到精通(上篇)

    在饼图中,sizes 列表中的每个元素决定了饼图中各个部分的大小比例。matplotlib 会根据这些数值的比例自动计算每一部分的角度和面积。 labels:这是用来为饼图中的各个部分添加标签。...每个标签会显示在相应部分的旁边,标识出该部分代表的数据类别。 autopct=‘%1.1f%%’:这是用来设置饼图中每个部分的自动百分比显示的。...它定义了显示百分比的格式: %1.1f%% 表示在图中显示百分比,1.1f 意味着保留一位小数,%% 是百分比符号。这里是让每一部分的百分比在饼图上显示为 1 位小数的格式。...plt.legend():显示图例,以便区分不同的产品线。 通过这个例子,我们学会了如何在同一个图表中绘制多个数据系列,这在多维数据的分析中非常有用。...4.3 创建子图布局 当我们有多组数据想要展示在同一个窗口时,可以使用子图布局。在 matplotlib 中,子图功能允许我们将同一个图表窗口划分为多个区域,每个区域展示不同的数据。

    1.4K10

    Highcharts-11-饼图绘制大全

    Highcharts-11-利用Highcharts绘制饼图 本文中介绍的是如何利用python-highcharts绘制各种饼图来满足不同的需求,主要包含: 基础饼图 单色+多色饼图制作 带上图例+数据的饼图...单色+多色饼图 上面的基础饼图在Highcharts中默认是每个区块的颜色是各不相同的,如果我们想每个区块的颜色是相同的,或者某几个区块的颜色是相同的,该如何操作呢?...显示图例和数据的饼图 上面提到的各种饼图都是没有图例的,同时在区块中也没有直接显示原始数据,下面介绍方法来实现这两种效果: ? ? 图例和数据显示的代码设置: ?...扇形图 上面介绍的都是如何制作各种饼图,下面介绍一种制作$\color{red}{扇形图}$的方法。首先看看整体的效果: ? 上面显示了5个类别的数据,同时显示了图例,并且在扇形图中显示了数据。...通过上面案例的介绍,我们发现使用Highcharts绘制图形的主要步骤如下: 1、导入我们需要的Highcharts库,再实例化一个Highcharts对象 2、数据项的配置:在绘图的时候,数据的配置也很重要

    1.5K30

    Google数据可视化团队:数据可视化指南(中文版)

    关系 关系图表显示多个项目之间的关系。 常见用例包括: 社交网络、词图 ? ---- 选择图表 面对多种类型的图表,以下指南提供了关于如何选择合适的图表见解。...· 柱状图(条形图)使用共同的基线,通过条形长度表示数量 · 饼图使用圆的圆弧或角度表示整体的一部分 柱状图(条形图),折线图和堆叠面积图在显示随时间的变化方面比饼图更有效地。...例:圆环图中,颜色用于表示类别。 颜色表示数量 ? 例:地图中,颜色用于表示数据值。 颜色突出数据 ? 例:散点图中,颜色用于突出特定数据。 重点区域 在不滥用的情况下,颜色可以突出焦点区域。...4. 文字排版 文本可用于不同的图表元素,包括: · 图表标题 · 数据标签 · 轴标签 · 图例 图表标题通常是具有最高层次结构的文本,轴标签和图例具有最低级别的层次结构。 ?...图例 在PC端,建议在图表下方放置图例。在移动端,将图例放在图表上方,以便在交互过程中保持可见。 标签和图例 在简单图表中,可以使用直接标签。在密集的图表(或更大的图表组的一部分)中,可以用图例。

    5.2K31

    用 Highcharts 绘制饼图,也很强大

    本文中介绍的是如何利用 python-highcharts 绘制各种饼图来满足不同的需求,主要包含: 基础饼图 单色+多色饼图制作 带上图例+数据的饼图 双层饼图的制作 扇形饼图 ?...单色+多色饼图 上面的基础饼图在 Highcharts 中默认是每个区块的颜色是各不相同的,如果我们想每个区块的颜色是相同的,或者某几个区块的颜色是相同的,该如何操作呢?...显示图例和数据的饼图 上面提到的各种饼图都是没有图例的,同时在区块中也没有直接显示原始数据,下面介绍方法来实现这两种效果: ? ? 图例和数据显示的代码设置: ?...现在我们看看代码中数据的显示: ? 可以很清晰地看到:先显示父级的数据,再显示子级的数据。整体的代码如下: ? 扇形图 上面介绍的都是如何制作各种饼图,下面介绍一种制作 扇形图 的方法。...首先看看整体的效果: ? 上面显示了5个类别的数据,同时显示了图例,并且在扇形图中显示了数据。整体的代码如下: ? 重点的设置部分: ?

    1.5K30

    C++ Qt开发:Charts绘制各类图表详解

    在之前的文章中笔者介绍了如何使用QCharts模块来绘制简单的折线图并对通用API接口进行了概括,本章我们通过在TreeWidget组件中提取数据,并依次实现柱状图、饼状图、堆叠图、百分比图、散点图等。...如下代码是使用 Qt 的图表模块创建一个包含柱状图和折线图的图表,并显示在 QGraphicsView 控件中,在MainWindow::MainWindow构造函数中我们可以使用如下代码实现柱状图的创建...:显示图例,并设置图例在底部对齐。...,并将其显示在 QGraphicsView 控件中,运行后则可以得到如下图所示的图例;1.2 创建饼状图饼状图(Pie Chart)用于展示各部分占整体的比例关系。...这种图表类型通常用于比较多个系列的总体趋势,并强调各个系列之间的相对贡献。在堆叠图中,每个系列的数值贡献会在相同的数值点上叠加显示,使得读者能够更容易比较各系列的相对大小。

    3.2K00

    用 Highcharts 绘制饼图,也很强大

    本文中介绍的是如何利用 python-highcharts 绘制各种饼图来满足不同的需求,主要包含: 基础饼图 单色+多色饼图制作 带上图例+数据的饼图 双层饼图的制作 扇形饼图 ?...单色+多色饼图 上面的基础饼图在 Highcharts 中默认是每个区块的颜色是各不相同的,如果我们想每个区块的颜色是相同的,或者某几个区块的颜色是相同的,该如何操作呢?...显示图例和数据的饼图 上面提到的各种饼图都是没有图例的,同时在区块中也没有直接显示原始数据,下面介绍方法来实现这两种效果: ? ? 图例和数据显示的代码设置: ?...现在我们看看代码中数据的显示: ? 可以很清晰地看到:先显示父级的数据,再显示子级的数据。整体的代码如下: ? 扇形图 上面介绍的都是如何制作各种饼图,下面介绍一种制作 扇形图 的方法。...首先看看整体的效果: ? 上面显示了5个类别的数据,同时显示了图例,并且在扇形图中显示了数据。整体的代码如下: ? 重点的设置部分: ?

    1.9K50

    C++ Qt开发:Charts绘制各类图表详解

    在之前的文章中笔者介绍了如何使用QCharts模块来绘制简单的折线图并对通用API接口进行了概括,本章我们通过在TreeWidget组件中提取数据,并依次实现柱状图、饼状图、堆叠图、百分比图、散点图等。...如下代码是使用 Qt 的图表模块创建一个包含柱状图和折线图的图表,并显示在 QGraphicsView 控件中,在MainWindow::MainWindow构造函数中我们可以使用如下代码实现柱状图的创建...:显示图例,并设置图例在底部对齐。...,并将其显示在 QGraphicsView 控件中,运行后则可以得到如下图所示的图例; 1.2 创建饼状图 饼状图(Pie Chart)用于展示各部分占整体的比例关系。...这种图表类型通常用于比较多个系列的总体趋势,并强调各个系列之间的相对贡献。在堆叠图中,每个系列的数值贡献会在相同的数值点上叠加显示,使得读者能够更容易比较各系列的相对大小。

    1.1K10

    【数据可视化】Echarts的高级功能

    当多个系列的数据存在极强的不可分离的关联意义时,为了避免在同一个直角系内同时展现时产生混乱,需要使用联动的多图表对其进行展现。...从左上角的柱状图中可以看出,折线图、柱状图和饼图3种图表最为常用;从左下角的柱状图中可以看出,在各种图表组件中,使用较多的图表组件分别有标题组件(title)、提示组件(tooltip)、图例组件(legend...ECharts提供了多图表联动(connect)的功能,连接的多个图表可以共享组件事件并实现保存图片时的自动拼接。多图表联动支持直角系下tooltip的联动。...(1)分别设置每个ECharts对象为相同的group值,并通过在调用ECharts对象的connect方法时,传入group值,从而使用多个ECharts对象建立联动关系,格式如下。...当鼠标滑过饼图的某个扇区时,饼图出现的详情提示框显示相应扇区所对应年份的招生人数及其所占各年总招生人数的比例,同时柱状图(或折线图)也会相应地出现详情提示框,显示对应年份各个专业的招生人数的详细数据。

    50410

    谷歌Material Design可视化数据设计规范指南

    关系 关系图表显示多个项目之间的关系。 常见用例包括: 社交网络、词图 选择图表 面对多种类型的图表,以下指南提供了关于如何选择合适的图表见解。...· 柱状图(条形图)使用共同的基线,通过条形长度表示数量 · 饼图使用圆的圆弧或角度表示整体的一部分 柱状图(条形图),折线图和堆叠面积图在显示随时间的变化方面比饼图更有效地。...由于这三个图表都是使用相同的基线,因此可以更轻松地根据条形长度比较值的差异。...颜色表示数量 例:地图中,颜色用于表示数据值。 颜色突出数据 例:散点图中,颜色用于突出特定数据。 重点区域 在不滥用的情况下,颜色可以突出焦点区域。...图例 在PC端,建议在图表下方放置图例。在移动端,将图例放在图表上方,以便在交互过程中保持可见。 标签和图例 在简单图表中,可以使用直接标签。在密集的图表(或更大的图表组的一部分)中,可以用图例。

    3.9K21

    8个plotly绘图技巧

    公众号:尤而小屋作者:Peter编辑:Peter大家好,我是Peter~本文介绍可视化神器plotly绘图的8个常见技巧点:如何添加标题及控制标题的颜色和大小如何自定义x轴和y轴的名称饼图中如何同时百分比和数值如何控制柱状图宽度如何添加注释如何绘制多子图如何添加图例以及控制其大小...、颜色如何快速绘制桑基图什么是PlotlyPlotly 是一个用于创建交互式数据可视化的 Python 库,它允许你轻松地生成各种类型的图表和图形,包括折线图、散点图、柱状图、饼图、热力图、3D 图等。...官网学习地址:https://plotly.com/图片Plotly 可以在 Jupyter Notebook、Python 脚本和 Web 应用程序中使用,它提供了多种工具和接口,使数据科学家、分析师和开发人员能够有效地探索和传达数据...支持多平台: Plotly 可以在多种环境中使用,包括 Jupyter Notebook、Python 脚本、Web 应用程序以及一些 BI 工具中。...()图片如何添加图例以及控制其颜色、大小、位置等In 10:import plotly.graph_objects as go# 创建散点图fig = go.Figure()# 添加散点图数据并设置图例标签

    64100

    60种常用可视化图表的使用场景——(上)

    在弧线图中,节点将沿着 X轴放置,然后再利用弧线表示节点与节点之间的连接关系。 弧线图适合用来查找数据共同出现的情况。...4、折线图 折线图用于在连续间隔或时间跨度上显示定量数值,最常用来显示趋势和关系。 此外,折线图也能给出某时间段内的「整体概览」,看看数据在这段时间内的发展情况。...13、堆叠式条形图 跟多组条形图不同,堆叠式条形图 (Stacked Bar Graph) 将多个数据集的条形彼此重迭显示,适合用来显示大型类别如何细分为较小的类别,以及每部分与总量有什么关系。...饼形图适合用来快速展示数据比例分布,但主要缺点是:不能显示太多项目、通常需要图例说明、不能准确比较。...在南丁格尔玫瑰图中,代表数值的是分段面积,而不是其半径。 推荐的制作工具有:Datamatic、Infogr.am。

    26710

    Matplotlib库在Python数据分析中的应用

    Matplotlib库的设计目标是让用户能够像使用MATLAB一样轻松地创建各种类型的图表,同时又能具备足够的灵活性和定制性。...它支持各种常见的图表类型,包括折线图、散点图、柱状图、饼图、等高线图等,还支持注释、标签、标题、图例等图形元素的添加和编辑。下面将逐个介绍Matplotlib库的常见功能和应用场景。2....fig, axes = plt.subplots(nrows=2, ncols=2)# 在第一个子图中绘制折线图x1 = [1, 2, 3, 4, 5]y1 = [2, 4, 6, 8, 10]axes...[0, 0].plot(x1, y1)axes[0, 0].set_title("Line Chart 1")# 在第二个子图中绘制散点图x2 = [1, 2, 3, 4, 5]y2 = [1, 3,..."C", "D", "E"]y3 = [10, 20, 30, 40, 50]axes[1, 0].bar(x3, y3)axes[1, 0].set_title("Bar Chart 1")# 在第四个子图中绘制饼图

    1K60

    数据可视化设计过程:面向初学者的循序渐进指南

    因为对于初学者来说,他们将花费更多时间在图表的新颖性和设计性上,而不是关注包含的信息。 4. 观众有多少时间? 如果只有很少的时间或兴趣,建议使用简单的静态图表。反之,交互式图表是一个很好的选择。...在大多数情况下,我们可以安全地将小数位舍入到最接近的整数。因为大多数人很少使用十分之几,百分之几或千分之一的位置进行决策。...然后再问问自己要显示多少个变量,要显示多少个数据点以及如何缩放轴。 创建折线图的最佳做法: 清楚地标记每一条轴的坐标与图例,确保观众知道他们正在评估的是什么内容。...步骤4:整理 在计算机上创建了数据可视化的第一稿之后,就该对可视化进行优化,使信息更加生动。无论我们使用的是哪种软件程序,优化都是必不可少的。 我进行的第一个编辑是整理我的可视化效果。...例如,在以下折线图中,删除单独的图例,并将类别标签放在每条线的右侧可以使图表看着更加美观整洁。 步骤5:用颜色澄清信息 颜色是图表中最强大的元素之一,请明智地选择图表中的每一个颜色!

    1.3K30

    matplotlib基础绘图命令之pie

    在matplotlib中,pie方法用于绘制饼图,基本用法如下 plt.pie(x=[1, 2, 3, 4]) 输出的结果如下 ?..., 设置饼图的阴影,使得看上去有立体感,默认值为False 4. startangle, 饼图中第一个部分的起始角度, 5. radius, 饼图的半径,数值越大,饼图越大 6. counterclock...对于饼图而言,有一个非常现实的问题,就是图例的设置,在单张图片中,饼图的内容总是汇合图例重叠,示意如下 ?...为了将图例和内容有效的区分开来,可以通过设置legend方法的bbox_to_anchor参数,该参数用于设置图例区域在figure上的坐标,其值为4个元素的元组,分别表示x,y,width,height...饼图作为常用图表之一,在展示百分比信息时,有不可替代的优势。matplotlib中的pie函数在传统饼图的基础上,添加了突出展示的功能,进一步加强了饼图的可视化效果。 ·end·

    1.5K40
    领券