标签: treemap

如何显示保存的树形图对象?包括MWE吗?

这可能是一个愚蠢的问题,但有谁知道在 R 中生成树形图对象后如何显示它?考虑下面的代码:

loadpackages <-function(package.list = c("ggplot2", "Rcpp")) {new.packages <-package.list[!(package.list %in% installed.packages()[, "Package"])]
    if (length(new.packages))
      install.packages(new.packages, repos = 'http://cran.us.r-project.org')
    lapply(eval(package.list), require, character.only = TRUE)}
loadpackages(c("treemap"))

data(GNI2014)
tm = treemap(
  GNI2014,
  index = c("continent", "iso3"),
  vSize = "population",
  vColor = "GNI",
  draw = FALSE, # comment this line out to see the treemap
  type = "value"
)
Run Code Online (Sandbox Code Playgroud)

这不会产生任何图形,但会保存“树形图列表”。有谁知道我如何显示这个对象?

PS:我的动机是在生成特定的树形图后修改一些分类标签(添加百分比),但我无法从树顶对象的显示中生成绘图。

plot r treemap

4
推荐指数
1
解决办法
723
查看次数

如何在有条件的 Apex 图表中使用不同的颜色?

我正在使用Apexcharts 树状图并想要应用不同的颜色。

如果 type 数据是“a”类型,我想要一种颜色,如果数据是“b”类型,我想要另一种颜色。

我的数据:

    const TreeData = [
          {
            data: [
              {
                x: 'Product 1',
                y: 218,
                type:'a'
              },
              {
                x: 'Product 2',
                y: 149,
                type:'b'
              }]
    
Run Code Online (Sandbox Code Playgroud)

我尝试过这样的事情:

    colors: [function({ value, seriesIndex, w }) {
        if (value < 55) {
            return '#7E36AF'
        } else {
            return '#D9534F'
        }
      }, function({ value, seriesIndex, w }) {
        if (value < 111) {
            return '#7E36AF'
        } else {
            return '#D9534F'
        }
      }]
    
Run Code Online (Sandbox Code Playgroud)

但我无法在上述函数中获取类型值。

如何使用不同的颜色?

treemap reactjs apexcharts

4
推荐指数
1
解决办法
3206
查看次数

将Java与Scala混合使用可变树TreeMap

在Java中,我可以执行以下操作:

TreeMap<Double, String> myMap = new TreeMap<Double, String>();
Run Code Online (Sandbox Code Playgroud)

如果我希望它以相反的顺序排序,我可以提供一个比较器,例如:

class ReverseOrder implements Comparator<Object> {

    public ReverseOrder() {

    }

    public int compare(Object o1,Object o2) {
        Double i1=(Double)o1;
        Double i2=(Double)o2;
        return -i1.compareTo(i2);
    }
}
Run Code Online (Sandbox Code Playgroud)

并将对象实例化为

TreeMap<Double, MyObject> myMap = new TreeMap<Double, MyObject>()(new ReverseOrder());
Run Code Online (Sandbox Code Playgroud)

如果我想从Scala中创建可变的Java TreeMap,我可以这样做:

var treeMap = new java.util.TreeMap[Double,MyObject]
Run Code Online (Sandbox Code Playgroud)

如何在Scala中实现Java比较器,以便我可以根据升序或降序进行排序?在这里,我假设我不能将Scala Ordering特征与Java集合混合.另外,有没有人知道Scala中是否可以使用可变的TreeMap?

sorting scala mutable treemap

3
推荐指数
1
解决办法
1761
查看次数

什么是TreeMap和HashMap中get()方法的运行时性能,大小为n

最近一个面试问题让我感到不确定.

对于TreeMap和HashMap中的get()方法,它的性能是什么?

a)平均值:常数(与n无关)最差:常数(与n无关)

b)平均值:常数(与n无关)最差:与log(n)成比例

c)平均值:常数(与n无关)最差:与(n)成比例

d)平均值:与log(n)成比例最差:与(n)成比例

哪个是对的?

java big-o hashmap map treemap

3
推荐指数
1
解决办法
5341
查看次数

treemap vs arraylist - 迭代/添加/编辑值时的性能和资源

谈论性能和资源.

在添加和编辑值,ArrayList或TreeMap时,哪一个更快,所需资源更少?

或者是否有任何类型的数据可以击败这两个?(它必须能够以某种方式使数据排序)

java performance resources arraylist treemap

3
推荐指数
2
解决办法
4497
查看次数

是否有可以替换键的有序映射

是否有任何具有排序Map(例如TreeMap)但能够替换的Java库keys?例如,我正在寻找可以取代的东西treeMapInstance.firstKey().速度是非常重要的,这就是为什么我不是存储值,删除,然后将值放回新密钥的原因.

在我的应用程序中,我可能有一个对象,如

TreeMap<Long, Double> foo = new TreeMap<Long, Double>();
Run Code Online (Sandbox Code Playgroud)

有时我想在foo不改变相关值的情况下更改密钥.

foo.put(1l, 1.0);
foo.put(2l, 2.0);
Run Code Online (Sandbox Code Playgroud)

在上面的,例如我怎么可能改变key 1l,以5l有效?

java replace map treemap sortedmap

3
推荐指数
1
解决办法
261
查看次数

在TreeMap,HashMap或LinkedHashMap中使用重复键存储值

我目前正在开展一个项目,我正在从社会安全网站上检索有关名称的数据.基本上我给了一个数字x,和y和z年.我必须从y到z的每一年返回前x个名字.

因此,从网站返回的数据是名称,等级和年份.我必须输入返回到TreeMap,HashMap或LinkedHashMap的每个名称,但我不确定如何存储它们,因为无论我使用什么作为键,都可能存在重复.这一年不能成为关键,因为我每年都会得到最多的x名,所以他们都将来自同一年.如果有多年,会有几个等级1等名称,因为每年都有一个,所以这不是关键.名称本身不是关键,因为多年来同名的名字可能在前几名中.

我已经设法理解了这个项目的大部分复杂部分,但这是最简单的部分之一,我似乎无法理解!

我听说过我可以使用类似年份的方法作为键,并使值成为名称或类似的列表,但我不确定如何在这样的实现中添加值.我非常感谢任何建议!

非常感谢.

编辑:请注意我被特别告知我必须使用TreeMap,HashMap或LinkedHashMap.我听说过MultiMap,但这不是我的选择之一.

java key hashmap treemap linkedhashmap

3
推荐指数
1
解决办法
1万
查看次数

从键值对开始迭代Java中的Map(特别是TreeMap)

我有一个TreeMap,我想迭代它并打印键值对.但我不想从头开始,我想从一个特定的键值对开始.

基本上我想这样做 -

TreeMap<String, String> treeMap = new TreeMap<String, String>();
//Populate it here
treeMap.get("key1");
//get the iterator to the treemap starting from the key1-value1 pair and iterate
Run Code Online (Sandbox Code Playgroud)

如果我想从头到尾迭代,我知道如何做到这一点,但我没有找到任何答案.

java treemap

3
推荐指数
1
解决办法
1688
查看次数

在Java中使用旧版本创建新地图的优雅方式,同时保持元素的排序相同

我们考虑以下代码:

//...

public Map<String, Integer> getFruits() throws SomeException {
    QueryResult[] queryResults = queryFruits();
    Map<String, Integer> fruits = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
    for (QueryResult qr : queryResults) {
        fruits.put(qr.getField("Name").toString(), (Integer) rec.getField("ArticleNumber"));
    }
    return fruits;
}

//...

public static void main(String args[]) {
    App app = new App();
    Map<String, Integer> originalFruits = app.getFruits();
    System.out.println(originalFruits.keySet());
}
Run Code Online (Sandbox Code Playgroud)

- 执行结果将是

[Apple, banana, cherry, Dragon_Fruit, Papaya ]
Run Code Online (Sandbox Code Playgroud)

在那之后,我正在打电话getApprovedFuits()并传递originalFruits给它,同时whiteListedFruitNames:

public Map<String, Integer> getApprovedFruits(Map<String, Integer> fruits, Set<String> whiteListedFruitNames) {
    Map<String, Integer> approvedFruits = new …
Run Code Online (Sandbox Code Playgroud)

java sorting dictionary case-insensitive treemap

3
推荐指数
1
解决办法
117
查看次数

删除具有空值的treeMap条目

我试图删除所有空值,但如果最后一个键的treeSet为null,那么它仍然存在.所以我在想如何删除最后一个条目,如果它是null.由于这是一个treeMap,我认为我可以通过使用tm.lastKey()访问它来获取最后一个元素,但该方法似乎不存在.所以这个问题是双重的.首先,有没有办法删除所有空值,包括最后一个,第二个是,.lastKey()方法在哪里?

public class Timing {
    private static Map<String, SortedSet> tm = new TreeMap<String, SortedSet>();

    public static Map manipulate() {
        SortedSet ss = new TreeSet();
        ss.add("APPL");
        ss.add("VOD");
        ss.add("MSFT");

        tm.put("2019-09-18",null);
        tm.put("2019-09-21",ss);
        tm.put("2019-09-22", null);
        tm.put("2019-09-20",ss);
        tm.put("2019-09-19", null);
        tm.put("2019-09-23",null);

        return tm;
    }

    public static void printMap() {
        for (String s: tm.keySet()) {
            System.out.println(s + ": " + tm.get(s));
        }
    }

    // Will delete all but the last one
    public static void deleteNull() {
        Set set = tm.entrySet();
        Iterator i = set.iterator();
        Map.Entry me = …
Run Code Online (Sandbox Code Playgroud)

java dictionary treemap

3
推荐指数
1
解决办法
686
查看次数