Take the 2-minute tour ×
Mathematica Stack Exchange is a question and answer site for users of Mathematica. It's 100% free, no registration required.

The data I have given here will plot the data in ListPlot3D function and gives the visualization of bars on the plot.

I want to customize the color for the bars in the plot. I need to plot them in two colors — one for side of the bar and another for the top surface of the bar. How can I set the color function to achieve this?

finalData = {{14.38, 18.1, 70}, {14.385714285714286`, 54.`, 
70}, {42.857142857142854`, 18.1`, 70}, {42.857142857142854`, 54.`,
 70}, {14.385714285714286`, 54.1`, 20}, {14.385714285714286`, 
90.`, 20}, {42.857142857142854`, 54.1`, 20}, {42.857142857142854`,
 90.`, 20}, {14.385714285714286`, 90.1`, 
15}, {14.385714285714286`, 126.`, 15}, {42.857142857142854`, 
90.1`, 15}, {42.857142857142854`, 126.`, 
15}, {14.385714285714286`, 126.1`, 25}, {14.385714285714286`, 
162.`, 25}, {42.857142857142854`, 126.1`, 
25}, {42.857142857142854`, 162.`, 25}, {14.385714285714286`, 
162.1`, 30}, {14.385714285714286`, 180, 30}, {42.857142857142854`,
 162.1`, 30}, {42.857142857142854`, 180, 
30}, {42.957142857142856`, 18.1`, 14}, {42.957142857142856`, 54.`,
 14}, {71.42857142857143`, 18.1`, 14}, {71.42857142857143`, 54.`, 
14}, {42.957142857142856`, 54.1`, 60}, {42.957142857142856`, 90.`,
 60}, {71.42857142857143`, 54.1`, 60}, {71.42857142857143`, 90.`, 
60}, {42.957142857142856`, 90.1`, 14}, {42.957142857142856`, 
126.`, 14}, {71.42857142857143`, 90.1`, 14}, {71.42857142857143`, 
126.`, 14}, {42.957142857142856`, 126.1`, 
24}, {42.957142857142856`, 162.`, 24}, {71.42857142857143`, 
126.1`, 24}, {71.42857142857143`, 162.`, 
24}, {42.957142857142856`, 162.1`, 34}, {42.957142857142856`, 180,
 34}, {71.42857142857143`, 162.1`, 34}, {71.42857142857143`, 180, 
34}, {71.52857142857142`, 18.1`, 18}, {71.52857142857142`, 54.`, 
18}, {100.`, 18.1`, 18}, {100.`, 54.`, 18}, {71.52857142857142`, 
54.1`, 28}, {71.52857142857142`, 90.`, 28}, {100.`, 54.1`, 
28}, {100.`, 90.`, 28}, {71.52857142857142`, 90.1`, 
23}, {71.52857142857142`, 126.`, 23}, {100.`, 90.1`, 23}, {100.`, 
126.`, 23}, {71.52857142857142`, 126.1`, 33}, {71.52857142857142`,
 162.`, 33}, {100.`, 126.1`, 33}, {100.`, 162.`, 
33}, {71.52857142857142`, 162.1`, 38}, {71.52857142857142`, 180, 
38}, {100.`, 162.1`, 38}, {100.`, 180, 38}, {100.1`, 18.1`, 
12}, {100.1`, 54.`, 12}, {128.57142857142858`, 18.1`, 
12}, {128.57142857142858`, 54.`, 12}, {100.1`, 54.1`, 
22}, {100.1`, 90.`, 22}, {128.57142857142858`, 54.1`, 
22}, {128.57142857142858`, 90.`, 22}, {100.1`, 90.1`, 
17}, {100.1`, 126.`, 17}, {128.57142857142858`, 90.1`, 
17}, {128.57142857142858`, 126.`, 17}, {100.1`, 126.1`, 
27}, {100.1`, 162.`, 27}, {128.57142857142858`, 126.1`, 
27}, {128.57142857142858`, 162.`, 27}, {100.1`, 162.1`, 
32}, {100.1`, 180, 32}, {128.57142857142858`, 162.1`, 
32}, {128.57142857142858`, 180, 32}, {128.67142857142858`, 18.1`, 
16}, {128.67142857142858`, 54.`, 16}, {157.14285714285714`, 18.1`,
 16}, {157.14285714285714`, 54.`, 16}, {128.67142857142858`, 
54.1`, 26}, {128.67142857142858`, 90.`, 26}, {157.14285714285714`,
 54.1`, 26}, {157.14285714285714`, 90.`, 
26}, {128.67142857142858`, 90.1`, 21}, {128.67142857142858`, 
126.`, 21}, {157.14285714285714`, 90.1`, 
21}, {157.14285714285714`, 126.`, 21}, {128.67142857142858`, 
126.1`, 31}, {128.67142857142858`, 162.`, 
31}, {157.14285714285714`, 126.1`, 31}, {157.14285714285714`, 
162.`, 31}, {128.67142857142858`, 162.1`, 
36}, {128.67142857142858`, 180, 36}, {157.14285714285714`, 162.1`,
 36}, {157.14285714285714`, 180, 36}, {157.24285714285713`, 18.1`,
 20}, {157.24285714285713`, 54.`, 20}, {185.71428571428572`, 
18.1`, 20}, {185.71428571428572`, 54.`, 20}, {157.24285714285713`,
 54.1`, 90}, {157.24285714285713`, 90.`, 
90}, {185.71428571428572`, 54.1`, 90}, {185.71428571428572`, 90.`,
 90}, {157.24285714285713`, 90.1`, 25}, {157.24285714285713`, 
126.`, 25}, {185.71428571428572`, 90.1`, 
25}, {185.71428571428572`, 126.`, 25}, {157.24285714285713`, 
126.1`, 35}, {157.24285714285713`, 162.`, 
35}, {185.71428571428572`, 126.1`, 35}, {185.71428571428572`, 
162.`, 35}, {157.24285714285713`, 162.1`, 
40}, {157.24285714285713`, 180, 40}, {185.71428571428572`, 162.1`,
 40}, {185.71428571428572`, 180, 40}};
ListPlot3D[finalData, Filling -> Bottom, RotationAction -> "Clip",AxesLabel -> {x, y, z}, PlotRange -> {{0, 200}, {0, 200}, {0, 100}}]
share|improve this question

1 Answer 1

up vote 4 down vote accepted
ListPlot3D[finalData, Filling -> Bottom, RotationAction -> "Clip", 
 AxesLabel -> {x, y, z}, PlotRange -> {{0, 200}, {0, 200}, {0, 100}}, 
 InterpolationOrder -> 0, Mesh -> None, FillingStyle -> Black, 
 PlotStyle -> Red]

Mathematica graphics

share|improve this answer
    
Thank you for your answer –  niren Mar 13 '13 at 14:26
    
If you notice in my given plot there is gap between 0 and 18 along x and y axis. As per your idea when i put InterPolationOrder-> 0 the gap between 0 and 18 is been filled, but i don't want the plot in that way. If i use PlotRange from 18 to 200 instead of 0 to 200, i can overcome this problem, but i don't want this way also. –  niren Mar 14 '13 at 6:08
    
@niren ListPlot3D[finalData, Filling -> Bottom, RotationAction -> "Clip", AxesLabel -> {x, y, z}, PlotRange -> {{0, 200}, {0, 200}, {0, 100}}, InterpolationOrder -> 0, Mesh -> None, FillingStyle -> Black, PlotStyle -> Red, RegionFunction -> (#1 > 18 && #2 > 18 &)] –  belisarius Mar 14 '13 at 8:44
5  
i tried the code you send but i don't the value 18 in my case. Then how do i mention 18 in regionfunction. –  niren Mar 14 '13 at 15:57

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.