我可以强制GGPLOT2散点图被方形具有相同的x和使用y缩放比例xlim()和ylim(),但它需要的限制人工计算.有没有更方便的方法呢?
方形我指的是两个要求:
我正在绘制两个群体中每个个体测量的两个同位素的相关系数(值= 0.0:1.0).我希望我的散点图具有固定的宽高比,这样无论图形设备如何,x轴和y轴的大小都完全相同.建议?
这是我在R中的第一个情节,对我的代码的改进的任何评论都表示赞赏?最后,是否值得投资学习基本的绘图技术,还是应该直接跳到ggplot2或格子?
我的情节剧本:
## Create dataset
WW_corr <-
structure(list(South_N15 = c(0.7976495, 0.1796725, 0.5338347,
0.4103769, 0.7447027, 0.5080296, 0.7566544, 0.7432026, 0.8927161
), South_C13 = c(0.76706752, 0.02320767, 0.88429902, 0.36648357,
0.73840937, 0.0523504, 0.52145159, 0.50707858, 0.51874445), North_N15 = c(0.7483608,
0.4294148, 0.9283554, 0.8831571, 0.5056481, 0.1945943, 0.8492716,
0.5759033, 0.7483608), North_C13 = c(0.08114805, 0.47268136,
0.94975596, 0.06023815, 0.33652839, 0.53055943, 0.30228833, 0.8864435,
0.08114805)), .Names = c("South_N15", "South_C13", "North_N15",
"North_C13"), row.names = c(NA, -9L), class = "data.frame")
opar <- par()
## Plot results
par(oma = c(1, 0, 0, 0), mar …Run Code Online (Sandbox Code Playgroud) 我想在ggplot2中创建一个干净版本的文本标签散点图.目标是直观地表示与约25个项目相关联的增加值.我已经在使用"position_jitter"了,但我想知道我能不能做得更好.
这是一些模拟数据:
title <- rep("A Really Rather Long Text Label", 25)
value <- runif(25, 1,10)
spacing <- seq(1:25)
df <- data.frame(title, value, spacing, stringsAsFactors = FALSE)
Run Code Online (Sandbox Code Playgroud)
以下是生成图表的代码:
library(ggplot2)
myplot <- ggplot(data=df, aes(x=spacing, y=value, label = title)) +
geom_text(aes(colour = value),
size = 2.5, fontface = "bold",
vjust = 0,
position = position_jitter(width=5, height=0)) +
theme_bw() +
scale_x_continuous(limits = c(-5, 30))+
scale_colour_gradient(low = "#6BAED6", high = "#08306B") +
theme(axis.title.x = element_blank(),
axis.ticks = element_blank(),
axis.text.x = element_blank(),
legend.position = "none")
myplot …Run Code Online (Sandbox Code Playgroud) 我想知道是否可以使用scatterMatplotlib 的函数为每个点绘制单独的alpha值.我需要绘制一组点,每个点都有一个alpha值.
例如,我有这个代码来绘制一些点
def plot_singularities(points_x, p, alpha_point, file_path):
plt.figure()
plt.scatter(points_x, points_y, alpha=alpha_point)
plt.savefig(file_path + '.png', dpi=100)
plt.close()
Run Code Online (Sandbox Code Playgroud)
我所有的points_x,points_y并alpha_point有n个值.但是,我无法将数组分配给alpha参数scatter().如何为每个点设置不同的alpha值?我可以使用每个特定的alpha值循环和逐点绘制,但这似乎不是一个好方法.
我使用以下代码绘制散点图.如何增加字体大小和改变x轴和y轴标签的颜色?
data=read.csv("data.csv")
plot(data$column1,data$column2,xlab="x axis", ylab="y axis", pch=19)
Run Code Online (Sandbox Code Playgroud) 我正在制作一些散点图,我想将图例中点的大小设置为固定的相等值.
现在我有这个:
import matplotlib.pyplot as plt
import numpy as np
def rand_data():
return np.random.uniform(low=0., high=1., size=(100,))
# Generate data.
x1, y1 = [rand_data() for i in range(2)]
x2, y2 = [rand_data() for i in range(2)]
plt.figure()
plt.scatter(x1, y1, marker='o', label='first', s=20., c='b')
plt.scatter(x2, y2, marker='o', label='second', s=35., c='r')
# Plot legend.
plt.legend(loc="lower left", markerscale=2., scatterpoints=1, fontsize=10)
plt.show()
Run Code Online (Sandbox Code Playgroud)
产生这个:

图例中点的大小是缩放的但不相同.如何在不影响图中大小的情况下将图例中点的大小固定为相等的值scatter?
有没有人知道在matplotlib中将散点图带到前台的方法?我必须在轮廓顶部显示散点图,但默认情况下会在下面绘制...
提前致谢!
我想修复多个散点图上的颜色范围,并在每个图中添加一个颜色条(每个图中都是相同的).基本上,我正在修复轴和颜色空间等的所有方面,以便绘图直接可以通过眼睛进行比较.
对于我的生活,我似乎无法弄清楚修复颜色范围的各种方法.我已经尝试了vmin,vmax,但它似乎没有做任何事情,我也试过攀登(x,y),这似乎也没有用.
这必须在这里和那里出现,我不能是唯一一个想要比较各个数据子集的人...所以,你如何修复颜色,以便每个数据保持它的颜色之间的颜色和不由于子集的最大/最小值的变化-v-整个集合,会重新映射到不同的颜色?
对于一个项目,我正在制作一些3D散点图,其下面有三个相应的投影.我使用不同的颜色来表示第四个参数.首先,我使用某种颜色绘制数据,然后使用不同的颜色绘制其他数据,以便最终订单可以让我看到我想要的所有内容:

在一开始这个工作正常,但是当我尝试用略有不同的数据做同样的事情时,颜色搞砸了.投影中显示的颜色是正确的,但3D图中缺少一些颜色,因此它们不再匹配:

当我以有趣的方式旋转3D绘图时,颜色会被恢复,我可以看到它们应该是:

但是,我不希望以有趣的方式旋转3D绘图,因为轴变得混乱并且不可能像这样正确地读取它.
我在这里找到了一个问题的解决方案: 在matplotlib中绘制三维散点图.它基本上说我应该用ax.plot(X,Y,'o')替换我的ax.scatter(X,Y).当我这样做时,颜色会以它们应该的方式显示出来,但是这样的情节更加混乱和丑陋.基本上我只想用散点图来做到这一点.
有谁知道如何解决这个问题?
这是我的代码的最小示例,仅适用于两种颜色:
from mpl_toolkits.mplot3d import art3d
import numpy as np
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
from matplotlib import gridspec
art3d.zalpha = lambda *args:args[0]
numcols = 20
percentage = 50
def load(Td, pc):
T = np.load(str(pc) + 'pctTemperaturesTd=' + str(Td) + '.npy')
D = np.load(str(pc) + 'pctDensitiesTd=' + str(Td) + '.npy')
CD = np.load(str(pc) + 'pctColDensitiesTd=' + str(Td) + '.npy')
return T, D, CD
def colors(ax):
colors = np.zeros((numcols, 4))
cm …Run Code Online (Sandbox Code Playgroud) 这是我的第一个matplotlib程序,对不起我的无知.
我有两个字符串数组.说,A = ['test1','test2']和B = ['test3','test4'].如果A和B元素之间存在任何相关性,则其corr值将设置为1.
test1 | test2
test3 | 1 | 0
test4 | 0 | 1
Run Code Online (Sandbox Code Playgroud)
现在,我想绘制一个散点图,其中我的X轴将是元素A,Y轴将是元素,B如果相关值是1,则它将在散射图中标记.怎么做?
scatter-plot ×10
python ×6
matplotlib ×5
r ×4
colors ×2
ggplot2 ×2
3d ×1
alpha ×1
aspect-ratio ×1
legend ×1
position ×1
scatter ×1