# Wrapping ArrayPlot or MatrixPlot around a circle

GROUPS:
 Darya Aleinikava 3 Votes I read in documentation the following:SectorChart is a generalization of PieChartI am not sure what is meant exactly, but I feel it could help me with the following task.Imagine a rectangular matrix with real values. ArrayPlot or MatrixPlot will produce rectangular visualizations. How can these visualizations be made circular? Given a matrix - these are the rules:Visualization consists of concentric rings subdivided in sectorsNumber of rings is equal to number of matrix rowsNumber of sectors is equal to number of matrix columnsRing widths are equalSector arcs are equalColor of each sector is related to the value of its matrix elementThank you!Darya
4 years ago
5 Replies
 Jari Kirma 2 Votes This is a bit of a hack, but something like this?m = Table[m n/70, {m, 10}, {n, 7}];SectorChart[Map[Style[{1, 10}, ColorData["Rainbow"][#]] &, m, {2}]]
4 years ago
 Darya Aleinikava 1 Vote Yes, this exactly what I need, thank you! I have 2 questions.Changing 2nd number here {1, 10} changes ring's width. But 1st number does not influence anything. What is it for? I guess this is what "a bit of a hack" referes to?I tried using it in this answer WaveletScalogram in polar coordinates but it was extremely slow - any way to speed this up?Speed is a really big issue here.cwd = ContinuousWaveletTransform[data, GaborWavelet[6], {4, 12}, WaveletScale -> 100];ws = WaveletScalogram[cwd, All, Re, ColorFunction -> "CherryTones"];SectorChart[ Map[Style[{1, 100}, ColorData["SunsetColors"][#]] &,   ws[[1, 1]][[All, 1 ;; -1 ;; 10]], {2}], PerformanceGoal -> "Speed", ChartStyle -> EdgeForm[None], Background -> Black]