5 added 667 characters in body edited Jun 15 '16 at 8:40 Sumit 11.9k22 gold badges2121 silver badges5757 bronze badges This is due to the interpolation. If you turn off the interpolation by InterpolationOrder -> 0 you will see symmetric plot. ListDensityPlot[data2data = Flatten[Table[{x, y, If[x == y, 1, 0]}, {x, 0, 1, 1/10}, {y, 0, 1, 1/10}], 1]; dataR = data; dataL = data /. {x_, y_, z_} :> {-x, y, z}; data0 = Join[dataL,dataR] ListDensityPlot[data0, ColorFunction -> "TemperatureMap", PlotLegends -> Automatic, InterpolationOrder -> 0]0,AspectRatio->1/2]  The default interpolation for the density depends on the order of data. For example lets consider ascending and descending order of x for data. data1 = Sort[dataSort[dataR, #1[] > #2[] &]; data2 = Sort[dataSort[dataR, #1[] < #2[] &]; ListDensityPlot[data1, ColorFunction -> "TemperatureMap", PlotLabel -> "data1"] ListDensityPlot[data2, ColorFunction -> "TemperatureMap", PlotLabel -> "data2"] So arranging your data properly will take care of the smoothing. data1 = Sort[dataL, #1[] > #2[] &]; data2 = Sort[dataR, #1[] < #2[] &]; data0 = Join[data1, data2]; ListDensityPlot[data0, ColorFunction -> "TemperatureMap", PlotLabel -> "Combined", AspectRatio -> 1/2] Notice that I choose different ordering for left and right section. Another (not so good) possible way could be using an interpolating function, like f = Interpolation[data2 // Union]; DensityPlot[f[x, y], {x, -1, 1}, {y, 0, 1}, PlotRange -> All, ColorFunction -> "TemperatureMap", PlotLegends -> Automatic] This is due to the interpolation. If you turn off the interpolation by InterpolationOrder -> 0 you will see symmetric plot ListDensityPlot[data2, ColorFunction -> "TemperatureMap", PlotLegends -> Automatic, InterpolationOrder -> 0] The default interpolation for the density depends on the order of data. For example lets consider ascending and descending order of x for data. data1 = Sort[data, #1[] > #2[] &]; data2 = Sort[data, #1[] < #2[] &]; ListDensityPlot[data1, ColorFunction -> "TemperatureMap", PlotLabel -> "data1"] ListDensityPlot[data2, ColorFunction -> "TemperatureMap", PlotLabel -> "data2"] So arranging your data properly will take care of the smoothing. Another (not so good) possible way could be using an interpolating function, like f = Interpolation[data2 // Union]; DensityPlot[f[x, y], {x, -1, 1}, {y, 0, 1}, PlotRange -> All, ColorFunction -> "TemperatureMap", PlotLegends -> Automatic] This is due to the interpolation. If you turn off the interpolation by InterpolationOrder -> 0 you will see symmetric plot. data = Flatten[Table[{x, y, If[x == y, 1, 0]}, {x, 0, 1, 1/10}, {y, 0, 1, 1/10}], 1]; dataR = data; dataL = data /. {x_, y_, z_} :> {-x, y, z}; data0 = Join[dataL,dataR] ListDensityPlot[data0, ColorFunction -> "TemperatureMap", PlotLegends -> Automatic, InterpolationOrder -> 0,AspectRatio->1/2] The default interpolation for the density depends on the order of data. For example lets consider ascending and descending order of x for data. data1 = Sort[dataR, #1[] > #2[] &]; data2 = Sort[dataR, #1[] < #2[] &]; ListDensityPlot[data1, ColorFunction -> "TemperatureMap", PlotLabel -> "data1"] ListDensityPlot[data2, ColorFunction -> "TemperatureMap", PlotLabel -> "data2"] So arranging your data properly will take care of the smoothing. data1 = Sort[dataL, #1[] > #2[] &]; data2 = Sort[dataR, #1[] < #2[] &]; data0 = Join[data1, data2]; ListDensityPlot[data0, ColorFunction -> "TemperatureMap", PlotLabel -> "Combined", AspectRatio -> 1/2] Notice that I choose different ordering for left and right section. Another (not so good) possible way could be using an interpolating function, like f = Interpolation[data2 // Union]; DensityPlot[f[x, y], {x, -1, 1}, {y, 0, 1}, PlotRange -> All, ColorFunction -> "TemperatureMap", PlotLegends -> Automatic] 4 added 348 characters in body edited Jun 14 '16 at 7:35 Sumit 11.9k22 gold badges2121 silver badges5757 bronze badges This is due to the interpolation. If you turn off the interpolation by InterpolationOrder -> 0 you will see symmetric plot ListDensityPlot[data2, ColorFunction -> "TemperatureMap", PlotLegends -> Automatic, InterpolationOrder -> 0] The default interpolation for the density depends on the order of data. For example lets consider ascending and descending order of x for data. data1 = Sort[data, #1[] > #2[] &]; data2 = Sort[data, #1[] < #2[] &]; ListDensityPlot[data1, ColorFunction -> "TemperatureMap", PlotLabel -> "data1"] ListDensityPlot[data2, ColorFunction -> "TemperatureMap", PlotLabel -> "data2"] So arranging your data properly will take care of the smoothing. Another (not so good) possible way could be using an interpolating function, like f = Interpolation[data2 // Union]; DensityPlot[f[x, y], {x, -1, 1}, {y, 0, 1}, PlotRange -> All, ColorFunction -> "TemperatureMap", PlotLegends -> Automatic] This is due to the interpolation. If you turn off the interpolation by InterpolationOrder -> 0 you will see symmetric plot ListDensityPlot[data2, ColorFunction -> "TemperatureMap", PlotLegends -> Automatic, InterpolationOrder -> 0] The default interpolation for the density depends on the order of data. For example lets consider ascending and descending order of x for data. data1 = Sort[data, #1[] > #2[] &]; data2 = Sort[data, #1[] < #2[] &]; ListDensityPlot[data1, ColorFunction -> "TemperatureMap", PlotLabel -> "data1"] ListDensityPlot[data2, ColorFunction -> "TemperatureMap", PlotLabel -> "data2"] So arranging your data properly will take care of the smoothing. This is due to the interpolation. If you turn off the interpolation by InterpolationOrder -> 0 you will see symmetric plot ListDensityPlot[data2, ColorFunction -> "TemperatureMap", PlotLegends -> Automatic, InterpolationOrder -> 0] The default interpolation for the density depends on the order of data. For example lets consider ascending and descending order of x for data. data1 = Sort[data, #1[] > #2[] &]; data2 = Sort[data, #1[] < #2[] &]; ListDensityPlot[data1, ColorFunction -> "TemperatureMap", PlotLabel -> "data1"] ListDensityPlot[data2, ColorFunction -> "TemperatureMap", PlotLabel -> "data2"] So arranging your data properly will take care of the smoothing. Another (not so good) possible way could be using an interpolating function, like f = Interpolation[data2 // Union]; DensityPlot[f[x, y], {x, -1, 1}, {y, 0, 1}, PlotRange -> All, ColorFunction -> "TemperatureMap", PlotLegends -> Automatic] 3 added 210 characters in body edited Jun 14 '16 at 0:11 Sumit 11.9k22 gold badges2121 silver badges5757 bronze badges This is due to the interpolation. If you turn off the interpolation by InterpolationOrder -> 0 you will see symmetric plot ListDensityPlot[data2, ColorFunction -> "TemperatureMap", PlotLegends -> Automatic, InterpolationOrder -> 0] You can useThe default interpolation for the density depends on the order of data. For example lets consider ascending and descending order of Interpolationx to amke a smooth plot.for data. fdata1 = Interpolation[data2Sort[data, //#1[] Union]; DensityPlot[f[x,> y],#2[] {x,&]; data2 -1,= 1}Sort[data, {y,#1[] 0,< 1}#2[] &]; ListDensityPlot[data1, PlotRangeColorFunction -> All"TemperatureMap", PlotLabel -> "data1"] ListDensityPlot[data2, ColorFunction -> "TemperatureMap", PlotLegendsPlotLabel -> Automatic]"data2"]  You might have to do some rescalingSo arranging your data properly will take care of the smoothing.   This is due to the interpolation. If you turn off the interpolation by InterpolationOrder -> 0 you will see symmetric plot ListDensityPlot[data2, ColorFunction -> "TemperatureMap", PlotLegends -> Automatic, InterpolationOrder -> 0] You can use Interpolation to amke a smooth plot. f = Interpolation[data2 // Union]; DensityPlot[f[x, y], {x, -1, 1}, {y, 0, 1}, PlotRange -> All, ColorFunction -> "TemperatureMap", PlotLegends -> Automatic] You might have to do some rescaling.   This is due to the interpolation. If you turn off the interpolation by InterpolationOrder -> 0 you will see symmetric plot ListDensityPlot[data2, ColorFunction -> "TemperatureMap", PlotLegends -> Automatic, InterpolationOrder -> 0] The default interpolation for the density depends on the order of data. For example lets consider ascending and descending order of x for data. data1 = Sort[data, #1[] > #2[] &]; data2 = Sort[data, #1[] < #2[] &]; ListDensityPlot[data1, ColorFunction -> "TemperatureMap", PlotLabel -> "data1"] ListDensityPlot[data2, ColorFunction -> "TemperatureMap", PlotLabel -> "data2"] So arranging your data properly will take care of the smoothing. 2 added 357 characters in body edited Jun 13 '16 at 11:54 Sumit 11.9k22 gold badges2121 silver badges5757 bronze badges 1 answered Jun 13 '16 at 11:48 Sumit 11.9k22 gold badges2121 silver badges5757 bronze badges