On Minimizing Wiggle in Stacked Area Charts
Abstract
Stacked area charts are a widely used visualization technique for numerical time series. The -axis represents time, and the time series are displayed as horizontal, variable-height layers stacked on top of each other. The height of each layer corresponds to the time series values at each time point. The main aesthetic criterion for optimizing the readability of stacked area charts is the amount of vertical change of the borders between the time series in the visualization, called wiggle. While many heuristic algorithms have been developed to minimize wiggle, the computational complexity of minimizing wiggle has not been formally analyzed. In this paper, we show that different variants of wiggle minimization are -hard and even hard to approximate. We also present an exact mixed-integer linear programming formulation and compare its performance with a state-of-the-art heuristic in an experimental evaluation. Lastly, we consider a special case of wiggle minimization that corresponds to the fundamentally interesting and natural problem of ordering a set of numbers as to minimize their sum of absolute prefix sums. We show several complexity results for this problem that imply some of the mentioned hardness results for wiggle minimization.
Keywords and phrases:
Stacked area charts, NP-hardness, Mixed-integer linear programmingFunding:
Alexander Dobler: Supported by the Vienna Science and Technology Fund (WWTF) under grant [10.47379/ICT19035].Copyright and License:
2012 ACM Subject Classification:
Mathematics of computing Permutations and combinations ; Theory of computation Theory and algorithms for application domains ; Theory of computation Problems, reductions and completenessSupplementary Material:
Software (Source code and experimental evaluation): https://doi.org/10.5281/zenodo.15745936Editors:
Pat Morin and Eunjin OhSeries and Publisher:
Leibniz International Proceedings in Informatics, Schloss Dagstuhl – Leibniz-Zentrum für Informatik
1 Introduction
Stacked area charts are a widely used method for visualizing numerical time series across discrete time points, such as population data of countries over time or movie revenues over multiple weeks [9, 4]. In stacked area charts, the -dimension depicts time, and the time series are stacked as variable-height strips on top of each other without gaps, such that their heights depict their values (see Figure 1a). The lowest border of the stacked time series is a straight horizontal line.
A primary aesthetic criterion for stacked area charts is wiggle – the aggregated amount of vertical change of the borders between the time series in the visualization (Figure 1b). Further, the wiggle is usually weighted by the time series values, resulting in weighted wiggle (for a formal definition refer to Section 2). For a stacked area chart of a specific dataset, the amount of wiggle solely depends on the vertical ordering of the time series. The task of minimizing wiggle has already been tackled with heuristic methods [4, 13]. But despite the popularity of stacked area charts in mainstream visualizations, no work was done with regard to the computational complexity of minimizing wiggle. This paper fills the gap and presents several complexity lower bounds for minimizing wiggle and weighted wiggle. We also compare a state-of-the-art heuristic for minimizing weighted wiggle with a new mixed-integer linear programming formulation on a set of real-world data; the evaluation shows that the heuristic performs well with regard to wiggle minimization and that the mixed-integer program can solve small to medium-size instances exactly. Further, a special case of minimizing wiggle is discussed that results in a fundamentally interesting problem – ordering a set of numbers such that the accumulation of all absolute prefix sums is minimized. Despite its natural problem definition, the problem has not been studied yet. Its relevance comes from its relation to several ordering problems that minimize accumulated cost, such as scheduling problems. Results for this problem are also used to show some hardness results for minimizing wiggles.
Related work.
The origin of stacked area charts is unclear, as they are a very natural and frequently used visualization for a commonly occurring type of data. The most notable work for popularizing research on stacked area charts is from 2008 by Byron and Wattenberg [4], since receiving more than 600 citations. Given the extensive literature on stacked area charts, we focus on studies specifically addressing wiggle minimization and similar aesthetic criteria in related visualizations. Byron and Wattenberg [4] only deal with data that represent movie revenues. Such data have very specific properties – a movie starts airing, its revenues grow quickly, and then the revenues slowly decrease. Thus, they present a very specific ordering approach that orders the movies by their first screening. They also consider a similar type of visualization, called streamgraphs. The only difference between streamgraphs and stacked area charts is that the lower border of a streamgraph does not have to be a horizontal line, introducing another degree of freedom. Still, wiggle minimization is defined equivalently for streamgraphs. Byron and Wattenberg present a similar ordering procedure for streamgraphs. Greffard and Kuntz [7] present an approach for weighted squared wiggle minimization in streamgraphs that first defines pairwise dissimilarity values between time series and then applies traveling salesperson approaches. Di Bartolomeo and Hu [2] present a heuristic and local search algorithm for weighted wiggle minimization in streamgraphs, which also work for stacked area charts. Bu et al. [3] present an ordering algorithm for streamgraphs that is based on clustering. They also optimize for minimizing what they call sine illusion effect – time series borders mimicking a sine wave. He and Li [8] present an ordering approach for stacked area charts based on a traveling salesperson formulation. Their approach aims to minimize the covariance between adjacent time series in the stacked area chart. Lastly, Mathiesen and Schulz [13] present a heuristic algorithm that is able to minimize a weighted sum of quality criteria for stacked area charts, including wiggle. Their approach is an improvement over an algorithm by Di Bartolomeo and Hu [2], and they demonstrate its effectiveness in an experimental evaluation.
The problem of ordering a set of numbers to minimize the accumulation of all absolute prefix sums is related to some classic problems from scheduling. Tsai [12] studies the problem where instead of minimizing the accumulation, one wants to minimize the maximum absolute prefix sum. They claim strong -hardness (a formal proof is absent). Kellerer et al. [10] consider the same problem as Tsai with the additional constraint that each prefix sum must be positive, and show constant-factor approximation algorithms. Further, they explicitly pose the open problem of minimizing the sum of all prefix sums. In their definition, though, the ordering has to satisfy that each prefix sum is positive, which is not the case for us.
Our contribution.
We consider wiggle minimization and weighted wiggle minimization in stacked area charts from a computational complexity perspective. For this, we define the two computational problems -WiggleMin and Weighted--WiggleMin in Section 2. The value in both problem definitions corresponds to the exponent of each wiggle value in the objective function, in turn capturing variants of wiggle minimization such as the weighted squared wiggle minimization from Byron and Wattenberg [4]. Further, we introduce and investigate a special case of instances leading to the problem Min-|Prefixsum| – ordering a set of numbers to minimize the sum of absolute prefix sums.
In Section 3, we show that Min-|Prefixsum| is strongly -hard and that both wiggle problems with are strongly -hard, even if the number of time points is constant. Next, we also consider special cases of Min-|Prefixsum|, where there is only one positive or one negative element in the input. Section 4 shows that both wiggle problems for arbitrary are strongly -hard, and hard to approximate under specific complexity assumptions. Further, a lower bound on the approximation ratio of a known greedy heuristic used in [2] and [13] is shown.
Lastly, Section 5 presents a mixed-integer linear program for Weighted--WiggleMin and compares it with the state-of-the-art heuristic of Mathiesen and Schulz [13] in an experimental evaluation on real-world data.
Due to space constraints, statements marked with are proved in the appendix.
2 Preliminaries and Problem Definitions
We define . A permutation of a multiset is a bijection . We sometimes treat as the list . Further, we define if and only .
An -time series is a function . We refer to the elements of its image as data points. A set of -time series, is balanced if for all .
A computational problem is strongly -hard if it remains -hard even if its numerical parameters are integers that are polynomial in the input size.
Problem Definitions
In most problems discussed in this paper, we are given a set of -time series. Given a permutation of , , and , we define the wiggle value . This results in the following two problem variants of wiggle minimization for stacked area charts, the first unweighted, and the second weighted by the time series data points - as is more common in the stacked area charts literature [2, 13, 7] (see also Figure 1b). For both problems, is a positive integer corresponding to the exponent of the wiggle values. The second problem is equivalent to the minimization of flatness in [13].
Problem 1 (-WiggleMin).
Given a set of -time series, find a permutation of such that is minimized.
Problem 2 (Weighted--WiggleMin).
Given a set of -time series, find a permutation of such that
is minimized. Above, is the time series containing only zeroes.
If , then -WiggleMin is equivalent (see Lemma 4) to the following fundamentally interesting problem, which we also study in this paper.
Problem 3 (Min-|Prefixsum|).
Given a multiset of real numbers, find a permutation of such that is minimized.
Given a solution of Min-|Prefixsum|, we define for , .
Next, we want to show relationships between the previously defined problems.
Lemma 4 ().
Given an instance of Min-|Prefixsum|, there exists an instance of -WiggleMin on two time points such that has a solution with value if and only if has a solution with value . If , then is balanced. Further, data point values in are bounded by a polynomial of the values in .
Conversely, for an instance of -WiggleMin on two time points, there exists an instance of Min-|Prefixsum| such that has a solution with value if and only if has a solution with value .
Lemma 5 ().
Let be an integer. Given a balanced instance of -WiggleMin on time points, there is an instance of Weighted--WiggleMin on time points and a constant such that has a solution with value if and only if has a solution with value . Further, the values of the data points in are polynomially bounded w.r.t. the values of the data points in .
A trivial algorithm for the mentioned problems would need to go over all permutations, and thus need time when is the instance size. A simple improvement is to use dynamic programming by computing the optimal solution for each subset of time series (or elements in ), leading to an algorithm needing time for some constant . In the following sections, we want to find out whether polynomial time exact, or approximation algorithms for the problems are likely.
3 Complexity of Min-|Prefixsum| and (Weighted)--WiggleMin
In this section, we consider the problem Min-|Prefixsum|. We will show several complexity results, some of which will imply results for -WiggleMin and Weighted--WiggleMin.
3.1 Strong NP-hardness
Most of this section is devoted to showing strong -hardness of Min-|Prefixsum|. The proof idea is to reduce instances of a known -hard problem to instances of Min-|Prefixsum|, such that has a solution value which is equal to a lower bound if and only if the instance which we reduced from is a yes instance. This lower bound is stated next.
Lemma 6.
A lower bound for the objective function of Min-|Prefixsum| is .
Proof.
Let be some solution of Min-|Prefixsum|. It is easy to see that for ,
Thus,
We call a solution achieving this bound bound-achieving. The next lemma states a sufficient condition that implies that the solution value exceeds the previously stated lower bound.
Lemma 7.
Let be a solution of Min-|Prefixsum| and . There exists such that if and only if .
Proof.
The backwards direction is clear. For the forward direction, we have
Additionally, in our reduction, we will consider instances of Min-|Prefixsum| that have specific properties. These properties are described below.
-
(IP1)
.
-
(IP2)
, i.e., is a multiple of .
-
(IP3)
has exactly positive elements and negative elements.
Hence, also has no elements equal to zero. We call an instance that satisfies (IP1)-(IP3) nice, and observe the following properties that will be useful for the reduction.
Lemma 8.
Let be a bound-achieving solution of a nice instance . At least one of is negative and at least one of is negative.
Proof.
If both are positive, then . Lemma 7 gives us a contradiction, as we assumed that is bound-achieving.
If both are positive, then we have, as , that and . It follows that , a contradiction.
Lemma 9.
Let be a bound-achieving solution of a nice instance . If for , and are both positive or both negative, then .
Proof.
If and are both positive, and then we have two cases.
-
If then , a contradiction.
-
If then , a contraction.
When both and , are negative, the proof works the same.
The following is a direct consequence of the last lemma.
Corollary 10.
Let be a bound-achieving solution of a nice instance . There exists no such that are all negative or all positive.
With these lemmas out of the way, we can show that has a unique structure with regard to the signs of its elements.
Lemma 11.
Let be a bound-achieving solution of a nice instance . Then, for ,
-
is positive if and only if or ,
-
is negative if and only if , and
-
if , then .
Proof.
We show the claim by induction on . For the base case, , assume for a contradiction that is negative. Together with Lemma 8 and the pigeonhole principle, it follows that there must be three consecutive positive elements, a contradiction to Corollary 10.
For the induction step , we have the following cases.
-
If then must be positive; otherwise, for the remaining following elements, we have negative elements and positive elements. By the pigeonhole principle, there are three consecutive positive elements, a contradiction. Further must hold: For it holds trivially. Otherwise, if was not zero, then must be negative by Lemma 9. For there to be no three consecutive positive elements in the remaining array, and must be positive, a contradiction.
-
If then is positive by the same argumentation as in the base case.
-
If then is clearly negative; otherwise, as is positive, would hold; a contradiction (see Lemma 7).
With this groundwork, we are able to show the following result.
Theorem 12.
The decision variant of Min-|Prefixsum| is strongly -complete.
Proof.
-membership is obvious, thus we continue with -hardness. We reduce from the strongly -hard problem Numerical 3-Dimensional Matching [17]. The problem input consists of three multisets , and , each containing integers. Let . The problem is to decide whether there exists a subset of such that
-
1.
each element from , , and appears in exactly one triple, and
-
2.
holds for each triple .
We can assume that each element from is positive (otherwise add to all elements , where and obtain an equivalent instance with regard to the solution). We also assume that each element from , and is smaller than . Now define the multisets , , and . Let . Notice that , and and are pairwise disjoint. We now define the instance of Min-|Prefixsum| as . Notice that is a nice instance satisfying (IP1)-(IP3).
We claim that is a yes-instance of Numerical 3-Dimensional Matching if and only if there exists a solution of that is bound-achieving. We prove both directions.
“”.
Let be a subset of constituting a solution to the instance of Numerical 3-Dimensional Matching. We constructively define by going through the triples in in any order. Let be the th triple. We define , and . By the definition of , and such a permutation always exists. Now notice for that is
-
, if and only if ,
-
positive if and only if , and
-
negative if and only if .
Thus, we have for all . It follows that .
“”.
Assume that is bound-achieving. We construct , starting with . Because is nice, we have that Lemma 11 holds for . For each we have the following. Let , and . Because of Lemma 11 we have that , is negative, and and are positive. Hence, holds. Now we claim that exactly one of and is from and exactly one is from . Indeed, if both and were from , then and is impossible. Similarly, if both and were from , then and is impossible. Thus, w.l.o.g. assume that and . Add to the triple . It is easy to verify that after adding this triple for each , verifies that is a yes-instance of Numerical 3-Dimensional Matching.
Corollary 13.
The decision variants of -WiggleMin and Weighted--WiggleMin are strongly -complete, even for a constant number of time points.
3.2 Restricted instances of Min-|Prefixsum|
We further ask for which types of instances Min-|Prefixsum| becomes tractable. In particular, we want to know whether restricting the number of negative (or positive) elements of has an effect on the computational complexity of Min-|Prefixsum|. Indeed, if only contains positive or only negative elements, then an optimal ordering will simply order the elements of by their absolute value. But what if contains exactly one positive or exactly one negative element? We obtain the following peculiar results, which state that the sum of has an effect on the complexity of Min-|Prefixsum| in this case.
Theorem 14 ().
Min-|Prefixsum| can be solved in time if contains exactly one negative (positive) element, and .
Theorem 15 ().
The decision variant of Min-|Prefixsum| is -complete, even if contains exactly one negative (positive) element.
We dedicate the rest of the section to show both results, starting with Theorem 14.
Proof sketch of Theorem 14.
We show the result for containing a single negative element , the result for a single positive element is shown equivalently. Now consider some permutation of , and let . We observe that the objective value can be split into absolute prefix sums before and after position as follows.
Thus, we obtain a weighted sum of the positive elements. The coefficient of an element depends only on its position in relation to the position of the negative element. This leads to a simple algorithm, which is also given as pseudocode in the long version of this paper: The permutation is chosen such that the negative element is in the middle. The smallest positive elements are placed at positions and , the next smallest at positions and , etc.
To show Theorem 15, we reduce from the following problem.
Problem 16 (OneInTwoPartition).
Given is a set containing pairs of positive integers. No integer appears twice in the union of all the integers. The question is: Are there two sets of size such that both sets contain exactly one element from each pair in , no element is contained in both sets, and ?
Clearly, OneInTwoPartition is -hard by a straightforward reduction from Partition [6]: Let be an instance of Partition, asking for a subset with . We can assume all integers in to be positive. Let . The reduced instance consists of the pairs for . The correctness of this reduction is immediate. We are ready to prove Theorem 15.
Proof sketch of Theorem 15.
Note that the proof is rather technical; to understand it in full detail, the interested reader should refer to the full description in full version of the paper. We reduce from OneInTwoPartition. Consider an instance of OneInTwoPartition, where . Define . We define the following three sets.
We continue with further definitions.
For each there are unique values such that for some , and . We say that is the correspondent of and is the correspondent of , and vice versa. We observe that can be partitioned uniquely into sets such that for each we have that
-
contains exactly three elements,
-
contains one element from , one from , and one from ,
-
the correspondent of and the correspondent of form a pair in , and
-
each integer from is in the interval .
We set as the instance of Min-|Prefixsum| and claim that is a yes-instance of OneInTwoPartition if and only if there exists a permutation of such that
We sketch the more interesting direction of the proof, assuming that is a solution achieving this objective, showing how to construct and . The idea now is that will order the elements as shown in Figure 2. Namely, the prefix sum will be zero, and the last elements will be ordered increasingly. Further, will be from set for each . This further implies that the last elements sum to , which is a multiple of . Together, this means that the last elements cannot contain any elements from . Now let be the set of correspondents of the last elements in , and let be the remaining elements from . The above properties imply that .
Note that a pseudo-polynomial algorithm for Min-|Prefixsum| cannot be ruled out for the case of one negative (positive) element, as we did not show strong -hardness.
4 -WiggleMin and Weighted--WiggleMin
In this section, we show hardness result for -WiggleMin and Weighted--WiggleMin for arbitrary . We present a reduction which has several complexity implications in Section 4.1. Section 4.2 contains results with regard to approximation lower bounds.
4.1 A Reduction Implying NP-hardness
The reduction is from the well-known problem Minimum Linear Arrangement [6] to -WiggleMin. The problem is defined as follows.
Problem 17 (Minimum Linear Arrangement (MLA)).
Given an undirected graph and an integer , does there exist a permutation of such that
Consider a constant positive integer . The reduction will work for any such , and goes as follows. Let be an instance of MLA with and . We construct a set of -time series. We define the time series inductively based on the time point, starting with the first time point: let for all . For time point consider the edge with . We define as
| (1) |
Now consider an arbitrary permutation of . Let be a permutation of that is defined such that for all . We have the following.
Lemma 18 ().
It holds that
| (2) |
Thus, a solution with solution value w.r.t. MLA corresponds to a solution with solution value w.r.t. -WiggleMin. Hence, hardness and inapproximability results of MLA directly carry over to -WiggleMin. Further, the instance is balanced, so results also carry over to Weighted--WiggleMin by Lemma 5. We obtain the following by the -hardness of MLA [6].
Theorem 19.
Let be an arbitrary integer. The decision variants of -WiggleMin and Weighted--WiggleMin are strongly -complete.
4.2 Approximation Lower Bounds
In this section, we consider the complexity of approximating -WiggleMin and Weighted--WiggleMin. Firstly, the reduction from the previous section implies two hardness results due to hardness results for MLA shown Ambühl et al. [1] and Raghavendra et al. [15].
Theorem 20.
Let be an arbitrary integer. Let be an arbitrarily small constant. If there is a PTAS for -WiggleMin or for Weighted--WiggleMin, then there is a (probabilistic) algorithm that decides whether a given SAT instance of size is satisfiable in time .
Note that it is widely believed that such an algorithm for SAT is unlikely, thus it is unlikely that there exists a PTAS for both problems.
Theorem 21.
Let be an arbitrary integer. Under the Small-Set Expansion Hypothesis [14], there is no constant-factor approximation for -WiggleMin and Weighted--WiggleMin.
The Small-Set Expansion Hypothesis is a hypothesis that implies the Unique-Games Conjecture [11, 14]. It was introduced by Raghavendra and Steurer in 2010 [14] and has since received much attention, as this conjecture would imply some hardness and inapproximability results, including the non-existence of a constant-factor approximation for treewidth [16].
A known greedy heuristic.
Next, we want to look at a known greedy heuristic called BestFirst for Weighted--WiggleMin that has been applied in works on stacked area charts [13, 2]. Given an instance of Weighted--WiggleMin, the heuristic iteratively builds the order , starting from the empty order. At step of the heuristic, the partial ordering of length is extended by appending a not yet chosen time series to the end that has the smallest increase in the objective value. Such heuristics equivalently exist for -WiggleMin and Min-|Prefixsum|, we also call them BestFirst.
Theorem 22 ().
The BestFirst heuristic has approximation factor at least for Weighted--WiggleMin, -WiggleMin, and Min-|Prefixsum|.
5 MILP and Experiments for Weighted--WiggleMin
Here, we present a mixed-integer linear program (MILP) for Weighted--WiggleMin and compare it to the state-of-the art heuristic from Mathiesen and Schulz [13]. This heuristic is different from the BestFirst heuristic from the last section and will be explained in more detail later. The aim of this comparison is to determine how an exact approach for Weighted--WiggleMin scales with respect to input size and to estimate how the heuristic of [13] compares with an exact algorithm with respect to solution quality. Note that the heuristic we compare with is strictly better than BestFirst as was demonstrated in an experimental evaluation by Mathisen and Schulz [13]. Due to space constraints, the description of the MILP can be found in the full version.
5.1 Experimental Setup
Tested algorithms.
We compared two algorithms for Weighted--WiggleMin. The first, WiggleMILP, is an implementation of the MILP. The second, UpwardsOpt, is the best state-of-the art algorithm from [13]. It iteratively performs moves that improve the objective value. In a single move, a time series is removed from the current ordering and reinserted into the position that is best with regard to the objective value.
Instances.
We obtained instances from real-world data, and these instances were also used in [13]. For example, the eight instances from [13] include unemployment rates of countries for a span of months, Covid values of countries for a span of days, and movie revenues for a span of weeks. These eight instances are very large, with 33–1,000 time series and 33–243 time points. We cannot expect that such instances can be solved to optimality by WiggleMILP, thus we sampled from these instances sub-instances as follows. For each instance and each , we picked uniformly at random time series from (if contains at least time series). These time series then constitute an instance. We did this five times for each combination of and , resulting in 465 instances overall.
Hardware and setup.
Both algorithms were implemented in Python 3.12.4. We used the original implementation of UpwardsOpt from [13] with the same parameters. WiggleMILP was implemented using the Python interface of Gurobi, using Gurobi v11.0.2. Due to large floating point values in the computations, the NumericFocus parameter of Gurobi was set to 3. The MIPGap parameter was set to 0, in order to find optimal solutions. Without this setup we ran into numeric issues in preliminary experiments. The experiments were run on a cluster using Intel Xeon E5-2640 v4, 2.40GHz 10-core processors, running Ubuntu 18.04.6 LTS. To simulate an end-user machine, the memory limit was set to 8GB and each algorithm was executed on a single thread. The time limit was set to one hour.
5.2 Results
In this section, we answer two questions: first, how does UpwardsOpt compare to WiggleMILP with respect to the solution quality; second, how scalable are both approaches with respect to the size of an instance. For the first question, we only considered 263 out of 465 instances where WiggleMILP produced the optimal solution – it neither timed out nor ran into the memory limit. For each instance where WiggleMILP produced the optimal solution, we compute the optimality gap that is defined as , where is the solution value of the algorithm . Thus, a value of zero corresponds to UpwardsOpt computing the optimal solution and larger values represent “how far away” UpwardsOpt is from the optimum. Figure 3(a) shows the distribution of optimality gaps. We observe that UpwardsOpt could solve 89 out of the 263 instances optimally, while the remaining optimality gaps are relatively low. This confirms that that UpwardsOpt is a good heuristic for Weighted--WiggleMin for real-world instances.
Next, in Figure 3(b) we present a scatter plot of runtimes. The -axis shows runtime in a logscale. The -axis corresponds to the instance size in terms of the number of time series. Each point in the plot corresponds to an instance-algorithm combination. The values at the top denote the percentage of instances with respective value that timed out for WiggleMILP (the memory limit was never reached). There were no timeouts for UpwardsOpt. We observe that UpwardsOpt is relatively fast, while WiggleMILP runs for much longer and times out already for some instances with time series.
Generally, we conclude that the state-of-the art heuristic UpwardsOpt is well-suited for Weighted--WiggleMin for real-world instances, even though the problem is computationally very hard in the theoretical sense.
6 Conclusion and Open Problems
We have investigated variants of wiggle minimization in stacked area charts from the theoretical side and showed computational lower bounds. Not only is it -hard to minimize wiggle, but it is also unlikely that approximations with good approximation guarantees exist. Nonetheless, we could show in an experimental evaluation that an existing heuristic is very good at minimizing weighted wiggle for real-world instances. Due to this being the first theoretical work on minimizing wiggle in stacked area charts, there remain some open problems.
-
Are there constant-factor approximations for Min-|Prefixsum|?
-
Are there stronger inapproximability results for -WiggleMin and Weighted--WiggleMin, i.e., under the assumption that .
-
We think that improvements to WiggleMILP are possible, and it might be interesting to investigate other exact wiggle minimization approaches.
-
Finally, our results might be extended to wiggle minimization in streamgraphs. It seems likely that the hardness results in this paper carry over to streamgraphs, though, we were not able to show that yet.
References
- [1] Christoph Ambühl, Monaldo Mastrolilli, and Ola Svensson. Inapproximability results for maximum edge biclique, minimum linear arrangement, and sparsest cut. SIAM J. Comput., 40(2):567–596, 2011. doi:10.1137/080729256.
- [2] Marco Di Bartolomeo and Yifan Hu. There is more to streamgraphs than movies: Better aesthetics via ordering and lassoing. Comput. Graph. Forum, 35(3):341–350, 2016. doi:10.1111/CGF.12910.
- [3] Chuan Bu, Quanjie Zhang, Qianwen Wang, Jian Zhang, Michael Sedlmair, Oliver Deussen, and Yunhai Wang. Sinestream: Improving the readability of streamgraphs by minimizing sine illusion effects. IEEE Trans. Vis. Comput. Graph., 27(2):1634–1643, 2021. doi:10.1109/TVCG.2020.3030404.
- [4] Lee Byron and Martin Wattenberg. Stacked graphs - geometry & aesthetics. IEEE Trans. Vis. Comput. Graph., 14(6):1245–1252, 2008. doi:10.1109/TVCG.2008.166.
- [5] Alexander Dobler and Martin Nöllenburg. On minimizing wiggle in stacked area charts. CoRR, abs/2506.21175, 2025. doi:10.48550/arXiv.2506.21175.
- [6] M. R. Garey and David S. Johnson. Computers and Intractability: A Guide to the Theory of NP-Completeness. W. H. Freeman, 1979.
- [7] Nicolas Greffard and Pascale Kuntz. Visualizing a set of multiple time series with an aggregate stacked graph. In Ebad Banissi, Mark W. McK. Bannatyne, Fatma Bouali, Remo Burkhard, John Counsell, Urska Cvek, Martin J. Eppler, Georges G. Grinstein, Weidong Huang, Sebastian Kernbach, Chun-Cheng Lin, Feng Lin, Francis T. Marchese, Chi Man Pun, Muhammad Sarfraz, Marjan Trutschl, Anna Ursyn, Gilles Venturini, Theodor G. Wyeld, and Jian J. Zhang, editors, Proc. International Conference on Information Visualisation (IV’2015), pages 68–74. IEEE Computer Society, 2015. doi:10.1109/IV.2015.23.
- [8] Yutian He and Hongjun Li. Optimal layout of stacked graph for visualizing multidimensional financial time series data. Inf. Vis., 21(1):63–73, 2022. doi:10.1177/14738716211045005.
- [9] Renée Huggett. Multiple line graphs (2). In Graphs and Charts, pages 43–46. Palgrave Macmillan UK, London, 1990. doi:10.1007/978-1-349-11245-6_10.
- [10] Hans Kellerer, Vladimir Kotov, Franz Rendl, and Gerhard J. Woeginger. The stock size problem. Oper. Res., 46(3-Supplement-3):S1–S12, 1998. doi:10.1287/OPRE.46.3.S1.
- [11] Subhash Khot. On the power of unique 2-prover 1-round games. In John H. Reif, editor, Proc. ACM Symposium on Theory of Computing (STOC’2002), pages 767–775. ACM, 2002. doi:10.1145/509907.510017.
- [12] Tsai Li-Hui. Sequencing to minimize the maximum renewal cumulative cost. Oper. Res. Lett., 12(2):117–124, 1992. doi:10.1016/0167-6377(92)90073-C.
- [13] Steffen Strunge Mathiesen and Hans-Jörg Schulz. Aesthetics and ordering in stacked area charts. In Amrita Basu, Gem Stapleton, Sven Linker, Catherine Legg, Emmanuel Manalo, and Petrucio Viana, editors, Proc. Diagrammatic Representation and Inference (Diagrams’2021), volume 12909 of Lecture Notes in Computer Science, pages 3–19. Springer, 2021. doi:10.1007/978-3-030-86062-2_1.
- [14] Prasad Raghavendra and David Steurer. Graph expansion and the unique games conjecture. In Leonard J. Schulman, editor, Proc. ACM Symposium on Theory of Computing (STOC’2010), pages 755–764. ACM, 2010. doi:10.1145/1806689.1806792.
- [15] Prasad Raghavendra, David Steurer, and Madhur Tulsiani. Reductions between expansion problems. In Proc. Conference on Computational Complexity (CCC’2012), pages 64–73. IEEE Computer Society, 2012. doi:10.1109/CCC.2012.43.
- [16] Yu (Ledell) Wu, Per Austrin, Toniann Pitassi, and David Liu. Inapproximability of treewidth and related problems. J. Artif. Intell. Res., 49:569–600, 2014. doi:10.1613/JAIR.4030.
- [17] Wenci Yu, Han Hoogeveen, and Jan Karel Lenstra. Minimizing makespan in a two-machine flow shop with delays and unit-time operations is NP-hard. J. Sched., 7(5):333–348, 2004. doi:10.1023/B:JOSH.0000036858.59787.C2.
